(PHP 4, PHP 5, PHP 7)
imagejpeg — Output image to browser or file
$image
[, string $filename
[, int $quality
]] )
imagejpeg() creates a JPEG file from
the given image
.
image
An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().
filename
The path to save the file to. If not set or NULL
, the raw image stream will be outputted directly.
To skip this argument in order to provide the
quality
parameter, use NULL
.
quality
quality
is optional, and ranges from 0 (worst
quality, smaller file) to 100 (best quality, biggest file). The
default is the default IJG quality value (about 75).
Returns TRUE
on success or FALSE
on failure.
Example #1 Outputting a JPEG image
<?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);
// Free up memory
imagedestroy($im);
?>
The above example will output something similar to:
Example #2 Saving a JPEG image
<?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 memory
imagedestroy($im);
?>
Example #3 Outputting the image at 75% quality
<?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 filename parameter using NULL, then set the quality to 75%
imagejpeg($im, NULL, 75);
// Free up memory
imagedestroy($im);
?>
Note: JPEG support is only available if PHP was compiled against GD-1.8 or later.
Note:
If you want to output Progressive JPEGs, you need to set interlacing on with imageinterlace().
Version | Description |
---|---|
5.4.0 |
Disallowed passing an empty string to filename to
skip this argument.
|