(PHP 4, PHP 5, PHP 7)
imagejpeg — Gibt das Bild im Browser oder einer Datei aus.
imagejpeg() erzeugt eine JPEG-Datei aus dem
übergebenen image
.
image
Eine von den verschiedenen Erzeugungsfunktionen wie imagecreatetruecolor() gelieferte Grafikressource.
to
Der Pfad unter dem das Bild gespeichert werden soll. Ist dies nicht gesetzt oder NULL
wird der rohe Bilddatenstrom direkt ausgegeben.
Um diesen Parameter zu übergehen, um den Parameter
quality
anzugeben kann NULL
verwendet werden.
quality
quality
ist optional und es kann ein Wert zwischen
0 (schlechteste Qualität, kleine Datei) und 100 (beste Qualität, größte Datei)
übergeben werden. Der Standardwert ist der standardmäßige
IJG-Qualitätswert (ungefähr 75).
Gibt bei Erfolg TRUE
zurück. Im Fehlerfall wird FALSE
zurückgegeben.
Beispiel #1 Ein Bild an den Browser ausgeben
<?php
// Erzeut ein leeres Bild und fügt ein wenig Text hinzu
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Die Content-Type-Kopfzeile senden, in diesem Fall image/jpeg
header('Content-Type: image/jpeg');
// Das Bild ausgeben
imagejpeg($im);
// Den Speicher freigeben
imagedestroy($im);
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
Beispiel #2 Ein Bild in eine Datei speichern
<?php
// Erzeugt ein leeres Bild und fügt ein wenig Text hinzu
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Das Bild als 'simpletext.jpg' speichern
imagejpeg($im, 'simpletext.jpg');
// Den Speicher freigeben
imagedestroy($im);
?>
Beispiel #3 Das Bild mit 75% Qualität an den Browser ausgeben
<?php
// Erzeugt ein leeres Bild und fügt ein wenig Text hinzu
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Die Content-Type-Kopfzeile senden, in diesem Fall image/jpeg
header('Content-Type: image/jpeg');
// Der Dateiname wird übergangen, indem NULL verwendet wird
// dann wird die Qualität auf 75% gesetzt
imagejpeg($im, NULL, 75);
// Den Speicher freigeben
imagedestroy($im);
?>
Hinweis:
Falls Progessive JPEGs ausgegeben werden sollen, so muss Interlacing mittels imageinterlace() eingeschaltet werden.
Version | Beschreibung |
---|---|
5.4.0 |
Unterstützung für die Übergabe einer Stream-Ressource (resource) an
to wurde hinzugefügt.
|
5.4.0 |
Es kann kein leerer String mehr für filename
übergeben werden, um diesen Parameter zu überspringen.
|