imagegif

(PHP 3, PHP 4 )

imagegif -- Envoie une image GIF vers un navigateur ou un fichier

Description

int imagegif ( resource image [, string filename])

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().

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.

Le nom du fichier est optionnel, et dans ce cas, l'image sera transmise directement à la sortie standard. En envoyant une en-tête de type image/gifcontent-type , (grâce à la fonction header()), vous pouvez créer des images avec des scripts PHP.

Note : Etant 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 librairie.

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
  
if (function_exists("imagegif")) {
    
header("Content-type: image/gif");
    
imagegif($im);
  }
  elseif (
function_exists("imagejpeg")) {
    
header("Content-type: image/jpeg");
    
imagejpeg($im, "", 0.5);
  }
  elseif (
function_exists("imagepng")) {
    
header("Content-type: image/png");
    
imagepng($im);
  } elseif (
function_exists("imagewbmp")) {
    
header("Content-type: image/vnd.wap.wbmp");
    
imagewbmp($im);
  }  else {
    die(
"Pas de support graphique avec PHP sur ce serveur");
  }
?>

Note : Depuis les versions 3.0.18 et 4.0.2, 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.

if (imagetypes() & IMG_GIF) {
    header ("Content-type: image/gif");
    imagegif ($im);
}
elseif (imagetypes() & IMG_JPG) {
        ... etc.

Voir aussi imagepng(), imagewbmp(), imagejpeg() et imagetypes().