Php/docs/function.imagejpeg

From Get docs

imagejpeg

(PHP 4, PHP 5, PHP 7)

imagejpegOutput image to browser or file


Description

imagejpeg ( resource $image [, mixed $to = NULL [, int $quality = -1 ]] ) : bool

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


Parameters

image
An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().
to
The path or an open stream resource (which is automatically being closed after this function returns) to save the file to. If not set or NULL, the raw image stream will be outputted directly.
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).


Return Values

Returns TRUE on success or FALSE on failure.

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


Examples

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/jpegheader('Content-Type: image/jpeg');// Output the imageimagejpeg($im);// Free up memoryimagedestroy($im);?>

The above example will output something similar to:


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');// Free up memoryimagedestroy($im);?>

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/jpegheader('Content-Type: image/jpeg');// Skip the to parameter using NULL, then set the quality to 75%imagejpeg($im, NULL, 75);// Free up memoryimagedestroy($im);?>

Notes

Note:

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

See Also