(PHP 4, PHP 5)
imagegif — Envoie une image GIF vers un navigateur ou un fichier
imagegif() crée un fichier image GIF avec le nom filename d'après l'image image . L'argument image est un identifiant valide retourné par la fonction imagecreate() ou les fonctions imagecreatefrom*.
Le format de l'image sera GIF87a, à moins que l'image n'ait une couleur transparente (mise en place grâce à la fonction imagecolortransparent())), ce qui fera qu'elle sera au format GIF89a.
Une ressource d'image, retourné par une des fonctions de création d'images, comme imagecreatetruecolor().
Le chemin vers le fichier de sauvegarde. Si le flux de l'image brute n'est pas fourni, il sera affiché directement.
Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.
Exemple #1 Affichage d'une image en utilisant imagegif()
<?php
// Création d'une image
$im = imagecreatetruecolor(100, 100);
// Définit l'arrière-plan en blanc
imagefilledrectangle($im, 0, 0, 99, 99, 0xFFFFFF);
// Dessine un texte dans l'image
imagestring($im, 3, 40, 20, 'GD Library', 0xFFBA00);
// Affiche l'image sur le navigateur
header('Content-type: image/gif');
imagegif($im);
imagedestroy($im);
?>
Exemple #2 Conversion d'une image PNG en GIF, en utilisant imagegif()
<?php
// Chargement de l'image PNG
$png = imagecreatefrompng('./php.png');
// Sauvegarde de l'image en GIF
imagegif($png, './php.gif');
// Libération de la mémoire
imagedestroy($png);
// C'est fait !
echo 'Convertion avec succès de l'image PNG en GIF !';
?>
Note: Étant donné que toutes les fonctions GIF ont été supprimées de la bibliothèque GD version 1.6, cette fonction ne sera pas accessible si vous avez cette version de la bibliothèque. Le support du format GIF sera de retour milieu 2004 dans la bibliothèque GD. Pour plus d'informations, voir le site du » projet GD.
Le code suivant vous permet d'écrire des scripts PHP plus portables : le type de GD est automatiquement détecté. Il remplace la séquence Header("Content-type: image/gif"); ImageGif($im); par un code plus souple :<?php
// Création d'une image
$im = imagecreatetruecolor(100, 100);
// On fait quelques opérations sur l'image ici...
// Gestion de l'affichage
if(function_exists('imagegif'))
{
// Pour GIF
header('Content-type: image/gif');
imagegif($im);
}
elseif(function_exists('imagejpeg'))
{
// Pour JPEG
header('Content-type: image/jpeg');
imagejpeg($im, NULL, 100);
}
elseif(function_exists('imagepng'))
{
// Pour PNG
header('Content-type: image/png');
imagepng($im);
}
elseif(function_exists('imagewbmp'))
{
// Pour WBMP
header('Content-type: image/vnd.wap.wbmp');
imagewbmp($im);
}
else
{
imagedestroy($im);
die('Aucun support sur ce serveur PHP n\'a été trouvé');
}
// Si un support a été trouvé pour un de ces formats,
// nous libérons la mémoire
if($im)
{
imagedestroy($im);
}
?>
Note: Depuis les versions 4.0.2 de PHP, vous pouvez utiliser la fonction imagetypes() au lieu de function_exists() pour vérifier la présence des différents formats d'images supportés.:
<?php
if(imagetypes() & IMG_GIF)
{
header('Content-type: image/gif');
imagegif($im);
}
elseif(imagetypes() & IMG_JPG)
{
/* ... etc. */
}
?>