(PHP 4, PHP 5, PHP 7, PHP 8)
imagejpeg — Выводит изображение в браузер или пишет в файл
Функция imagejpeg() создаёт файл JPEG
из изображенияimage
.
image
Объект GdImage, возвращаемый одной из функций создания изображений, например, такой как imagecreatetruecolor().
file
Путь, или открытый потоковый ресурс (который автоматически закрывается после завершения функции), для сохранения файла. Если не установлен или равен null
, изображение будет выведено в поток вывода в бинарном виде.
quality
Необязательный параметр, и может принимать значения в
диапазоне от 0 (низкое качество, маленький размер файла) до 100 (высокое качество, большой размер файла).
По умолчанию (-1
)
используется качество IJG (около 75).
Возвращает true
в случае успешного выполнения или false
в случае возникновения ошибки.
Однако, если libgd не может вывести изображения, эта функция вернёт true
.
Версия | Описание |
---|---|
8.0.0 |
image теперь ожидает экземпляр GdImage;
ранее ожидался корректный gd ресурс (resource).
|
Пример #1 Вывод JPEG-изображения в браузер
<?php
// Создаём пустое изображение и добавляем текст
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Устанавливаем тип содержимого в заголовок, в данном случае image/jpeg
header('Content-Type: image/jpeg');
// Выводим изображение
imagejpeg($im);
// Освобождаем память
imagedestroy($im);
?>
Результатом выполнения данного примера будет что-то подобное:
Пример #2 Сохранение изображения JPEG в файл
<?php
// Создаём пустое изображение и добавляем текст
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Сохраняем изображение в 'simpletext.jpg'
imagejpeg($im, 'simpletext.jpg');
// Освобождаем память
imagedestroy($im);
?>
Пример #3 Вывод JPEG-изображения с 75% качеством в браузер
<?php
// Создаём пустое изображение и добавляем текст
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// Устанавливаем тип содержимого в заголовок, в данном случае image/jpeg
header('Content-Type: image/jpeg');
// Пропускаем параметр file, используя NULL, а затем устанавливаем качество в 75%
imagejpeg($im, NULL, 75);
// Освобождаем память
imagedestroy($im);
?>
Замечание:
Если требуется вывести Progressive JPEG (прогрессивное представление данных), то необходимо использовать функцию imageinterlace() для активации соответствующего режима.