(PHP 4, PHP 5, PHP 7, PHP 8)
imagegif — Enviar la imagen al navegador o a un archivo
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.
imagefileLa ruta o un recurso de flujo abierto (que se cierra automáticamente después de que esta función retorne) donde guardar el archivo. Si no se define o es null, el flujo de imagen sin procesar se enviará directamente.
Esta función retorna true en caso de éxito o false si ocurre un error.
Sin embargo, si libgd no logra producir la imagen, esta función devuelve true.
| Versión | Descripción |
|---|---|
| 8.0.0 |
image ahora espera una instancia de GdImage;
anteriormente, se esperaba un resource gd válido.
|
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 !';
?>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. */
}
?>