(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, если возникла ошибка.
Функция вернёт значение true, если вывести изображение средствами библиотеки libgd невозможно.
Функция выбрасывает ошибку ValueError,
если значение параметра quality недопустимо.
| Версия | Описание |
|---|---|
| 8.4.0 |
Функция теперь выбрасывает ошибку ValueError,
если значение параметра quality недопустимо.
|
| 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);
?>Вывод приведённого примера будет похож на:
Пример #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');
?>
Пример #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);
?>Замечание:
Для вывода данных в формате Progressive JPEG потребуется путём вызова функции imageinterlace() включить для изображения интерлейсинг.