imagegif

(PHP 4, PHP 5, PHP 7, PHP 8)

imagegifExportar la imagen al navegador o a un fichero

Descripción

imagegif(GdImage $image, resource|string|null $file = null): bool

imagegif() crea un fichero de imagen GIF en file a partir de la imagen image. El argumento image es un identificador válido devuelto por la función imagecreate() o las funciones imagecreatefrom*.

El formato de la imagen será GIF87a, a menos que la imagen tenga un color transparente (establecido mediante la función imagecolortransparent()), lo que hará que sea en formato GIF89a.

Parámetros

image

Un recurso image, es devuelto por una de las funciones de creación de imágenes, como imagecreatetruecolor().

file

La ruta o un recurso de flujo de apertura (el cual se cierra automáticamente después de que devuelva esta función) donde guardar el fichero. Si no se establece, o su valor es null, se mostrará directamente en la salida el flujo de imagen sin tratar.

Valores devueltos

Devuelve true en caso de éxito o false en caso de error.

Precaución

Sin embargo, si libgd falla al producir la imagen, esta función devuelve true.

Historial de cambios

Versión Descripción
8.0.0 image expects a GdImage instance now; previously, a valid gd resource was expected.

Ejemplos

Ejemplo #1 Visualización de una imagen utilizando imagegif()

<?php
// Creación de una imagen
$im = imagecreatetruecolor(100, 100);

// Define el fondo como blanco
imagefilledrectangle($im, 0, 0, 99, 99, 0xFFFFFF);

// Dibuja texto en la imagen
imagestring($im, 3, 40, 20, 'GD Library', 0xFFBA00);

// Muestra la imagen en el navegador
header('Content-Type: image/gif');

imagegif($im);
?>

Ejemplo #2 Conversión de una imagen PNG a GIF, utilizando imagegif()

<?php
// Carga de la imagen PNG
$png = imagecreatefrompng('./php.png');

// Guardado de la imagen como GIF
imagegif($png, './php.gif');

// ¡Listo!
echo 'Conversión exitosa de la imagen PNG a GIF !';
?>

Notas

Nota:

El siguiente código permite escribir scripts PHP más portables: el tipo de GD se detecta automáticamente. Reemplaza la secuencia header ("Content-Type: image/gif"); ImageGif($im); por un código más flexible:

<?php
// Creación de una imagen
$im = imagecreatetruecolor(100, 100);

// Se realizan algunas operaciones en la imagen aquí...

// Manejo de la visualización
if(function_exists('imagegif'))
{
// Para GIF
header('Content-Type: image/gif');

imagegif($im);
}
elseif(
function_exists('imagejpeg'))
{
// Para JPEG
header('Content-Type: image/jpeg');

imagejpeg($im, NULL, 100);
}
elseif(
function_exists('imagepng'))
{
// Para PNG
header('Content-Type: image/png');

imagepng($im);
}
elseif(
function_exists('imagewbmp'))
{
// Para WBMP
header('Content-Type: image/vnd.wap.wbmp');

imagewbmp($im);
}
else
{
die(
'No se encontró soporte para ningún formato de imagen en este servidor PHP');
}

?>

Nota:

Puede utilizarse la función imagetypes() en lugar de function_exists() para verificar la presencia de los diferentes formatos de imagen soportados:

<?php
if(imagetypes() & IMG_GIF)
{
header('Content-Type: image/gif');
imagegif($im);
}
elseif(
imagetypes() & IMG_JPG)
{
/* ... etc. */
}
?>

Ver también

  • imagepng() - Envía una imagen PNG a un navegador o a un fichero
  • imagewbmp() - Exportar la imagen al navegador o a un fichero
  • imagejpeg() - Exportar la imagen al navegador o a un fichero
  • imagetypes() - Devuelve los tipos de imágenes soportados por la versión actual de PHP