(PHP 4, PHP 5)
imagegif — Ausgabe des Bildes im Browser oder als Datei
imagegif() erzeugt eine GIF-Datei aus dem übergebenen image. Der Inhalt des Parameters image ist die Rückgabe der Funktionen imagecreate() oder imagecreatefrom*
Das Dateiformat wird GIF87a sein, es sei denn das Bild wurde mittels imagecolortransparent() transparent gemacht. In diesem Fall wird das Dateiformat GIF89a sein.
Eine von den verschiedenen Erzeugungsfunktionen wie imagecreatetruecolor() gelieferte Grafikressource.
Der Pfad der Datei, in die geschrieben werden soll. Wenn dies nicht gesetzt oder NULL ist, so wird die Bilddatei direkt ausgegeben.
Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.
Beispiel #1 Ein Bild mittels imagegif() ausgeben
<?php
// Erzeugt ein neues Bild
$im = imagecreatetruecolor(100, 100);
// Den Hintergrund weiß machen
imagefilledrectangle($im, 0, 0, 99, 99, 0xFFFFFF);
// Einen Text im Bild ausgeben
imagestring($im, 3, 40, 20, 'GD Library', 0xFFBA00);
// Das Bild an den Browser ausgeben
header('Content-type: image/gif');
imagegif($im);
imagedestroy($im);
?>
Beispiel #2 Eine PNG-Datei mit imagegif() in GIF konvertieren
<?php
// Die PNG-Datei laden
$png = imagecreatefrompng('./php.png');
// Die Datei im GIF-Format speichern
imagegif($png, './php.gif');
// Den Speicher freigeben
imagedestroy($png);
// Wir sind fertig
echo 'Die PNG-Datei wurde erfolgreich nach GIF konvertiert!';
?>
Hinweis:
Die Unterstützung des GIF-Dateiformates wurde in der Version 1.6 der GD-Bibliothek entfernt und in der Version 2.0.28 wieder hinzugefügt. Nähere Angaben finden Sie auf der Webseite des » GD Projekts.
Der folgende Codeauszug erlaubt es Ihnen leichter umzuziehende PHP-Anwendungen zu schreiben, indem die von GD unterstützten Dateiformat automatisch erkannt werden. Ersetzen Sie den Abschnitt header ("Content-type: image/gif"); imagegif ($im); durch den folgenden Abschnitt:
<?php
// Ein neues Bild erzeugen
$im = imagecreatetruecolor(100, 100);
// Hier wird das Bild bearbeitet
// Ausgabebehandlung
if(function_exists('imagegif'))
{
// Für GIF
header('Content-type: image/gif');
imagegif($im);
}
elseif(function_exists('imagejpeg'))
{
// Für JPEG
header('Content-type: image/jpeg');
imagejpeg($im, NULL, 100);
}
elseif(function_exists('imagepng'))
{
// Für PNG
header('Content-type: image/png');
imagepng($im);
}
elseif(function_exists('imagewbmp'))
{
// Für WBMP
header('Content-type: image/vnd.wap.wbmp');
imagewbmp($im);
}
else
{
imagedestroy($im);
die('Auf diesem Server gibt es keine unterstützten Bildformate');
}
// Falls Unterstützung für eines von diesen Formaten
// gefunden wurde, geben wir den Speicher frei
if($im)
{
imagedestroy($im);
}
?>
Hinweis:
Seit der PHP-Version 4.0.2 kann die Funktion imagetypes() anstelle der Funktiom function_exists() zur Prüfung der Unterstützung der verschiedenen Dateiformate verwendet werden:
<?php
if(imagetypes() & IMG_GIF)
{
header('Content-type: image/gif');
imagegif($im);
}
elseif(imagetypes() & IMG_JPG)
{
/* ... etc. */
}
?>