imagejpeg

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

imagejpegInvia l'immagine al browser o in un file

Descrizione

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

imagejpeg() creates a JPEG file from the given image.

Elenco dei parametri

image

Una risorsa immagine, restituita da una delle funzioni di creazione immagine, come imagecreatetruecolor().

file

Il percorso in cui salvare il file. Se non è impostato o è null, viene restituito il flusso raw dell'immagine.

quality

quality is optional, and ranges from 0 (worst quality, smaller file) to 100 (best quality, biggest file). The default (-1) uses the default IJG quality value (about 75).

Valori restituiti

Restituisce true in caso di successo, false in caso di fallimento.

Attenzione

However, if libgd fails to output the image, this function returns true.

Errori/Eccezioni

Throws a ValueError if quality is invalid.

Log delle modifiche

Versione Descrizione
8.4.0 Now throws a ValueError if quality is invalid.
8.0.0 image expects a GdImage instance now; previously, a valid gd resource was expected.

Esempi

Example #1 Outputting a JPEG image to the browser

<?php
// Create a blank image and add some text
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);

// Set the content type header - in this case image/jpeg
header('Content-Type: image/jpeg');

// Output the image
imagejpeg($im);
?>

Il precedente esempio visualizzerà qualcosa simile a:

Output of example : Outputting a JPEG image

Example #2 Saving a JPEG image to a file

<?php
// Create a blank image and add some text
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);

// Save the image as 'simpletext.jpg'
imagejpeg($im, 'simpletext.jpg');
?>

Example #3 Outputting the image at 75% quality to the browser

<?php
// Create a blank image and add some text
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);

// Set the content type header - in this case image/jpeg
header('Content-Type: image/jpeg');

// Skip the file parameter using NULL, then set the quality to 75%
imagejpeg($im, NULL, 75);
?>

Note

Nota:

If you want to output Progressive JPEGs, you need to set interlacing on with imageinterlace().

Vedere anche: