imagejpeg

(PHP 4, PHP 5, PHP 7, PHP 8)

imagejpegGibt das Bild im Browser oder einer Datei aus.

Beschreibung

imagejpeg(GdImage$image, resource|string|null$file = null, int$quality = -1): bool

imagejpeg() erzeugt eine JPEG-Datei aus dem übergebenen image.

Parameter-Liste

image

Ein GdImage-Objekt, das von einer der Funktionen zur Bilderzeugung, z. B. imagecreatetruecolor(), zurückgegeben wurde.

file

Der Pfad oder eine offene Stream-Ressource (die nach der Beendigung dieser Funktion automatisch geschlossen wird), in dem bzw. der die Datei gespeichert werden soll. Falls nicht gesetzt oder null, wird der rohe Bilddatenstrom direkt ausgegeben.

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 (-1) verwendet den standardmäßigen IJG-Qualitätswert (ungefähr 75).

Rückgabewerte

Gibt bei Erfolg true zurück. Bei einem Fehler wird false zurückgegeben.

Achtung

Wenn libgd das Bild nicht ausgeben kann, gibt diese Funktion true zurück.

Changelog

VersionBeschreibung
8.0.0image erwartet nun eine GdImage-Instanz; vorher wurde eine gültige gd-Ressource erwartet.

Beispiele

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:

Ausgabe des Beispiels: Ein Bild ausgeben

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);
?>

Anmerkungen

Hinweis:

Falls Progessive JPEGs ausgegeben werden sollen, so muss Interlacing mittels imageinterlace() eingeschaltet werden.

Siehe auch

  • imagepng() - Ausgabe eines Bildes im Browser oder als Datei im PNG-Format
  • imagegif() - Gibt das Bild im Browser oder einer Datei aus.
  • imagewbmp() - Gibt das Bild im Browser oder einer Datei aus.
  • imageinterlace() - Aktiviert oder Deaktiviert Interlacing
  • imagetypes() - Liefert die von der verwendeten PHP-Version unterstützten Grafikformate
To Top