(PHP 4, PHP 5, PHP 7, PHP 8)
imagegif — Выводит изображение в браузер или записывет в файл
Функция imagegif() создаёт изображение в формате GIF
в файле или ресурсе потока, который указали в аргументе file
.
Функция берёт за основу изображение image
.
Аргумент image
— изображение, которое возвращает
функция imagecreate() или функции семейства
imagecreatefrom*
.
Функция создаст файл в формате GIF87a, если только изображение не сделали прозрачным функцией imagecolortransparent(), тогда функция создаст изображение в формате GIF89a.
image
Объект GdImage, который возвращает одна из функций, создающих изображения, например, imagecreatetruecolor().
file
Путь или ресурс открытого потока, который функция автоматически закрывает
после возврата значения, для сохранения файла. Функция выведет поток необработанного изображения напрямую,
если параметр не установили или передали в аргументе значение null
.
Функция возвращает true
, если выполнилась успешно, или false
, если возникла ошибка.
Однако,
если libgd не может вывести изображения, эта функция вернёт true
.
Версия | Описание |
---|---|
8.0.0 |
Параметр image теперь ожидает экземпляр класса GdImage;
раньше параметр ждал корректный gd -ресурс (resource).
|
Пример #1 Пример вывода изображения функцией imagegif()
<?php
// Создание изображения
$im = imagecreatetruecolor(100, 100);
// Создание белого фона
imagefilledrectangle($im, 0, 0, 99, 99, 0xFFFFFF);
// Отрисовка текста на изображении
imagestring($im, 3, 40, 20, 'GD библиотека', 0xFFBA00);
// Вывод изображения в браузер
header('Content-Type: image/gif');
imagegif($im);
?>
Пример #2 Пример преобразования PNG-изображения в формат GIF функцией imagegif()
<?php
// Загрузка PNG-файла
$png = imagecreatefrompng('./php.png');
// Сохранение файла в формате GIF
imagegif($png, './php.gif');
// Готово
echo 'Преобразование PNG-файла в GIF-файл завершилось успешно!';
?>
Замечание:
Следующий фрагмент кода помогает писать переносимые PHP-приложения и автоматически определяет доступный тип GD-изображения. Замените строки
header ("Content-Type: image/gif"); imagegif ($im);
на более гибкую последовательность:<?php
// Создание нового изображения
$im = imagecreatetruecolor(100, 100);
// Какие-либо операции с изображением
// Обработка вывода
if (function_exists('imagegif')) {
// Для GIF-файлов
header('Content-Type: image/gif');
imagegif($im);
} elseif (function_exists('imagejpeg')) {
// Для JPEG-файлов
header('Content-Type: image/jpeg');
imagejpeg($im, NULL, 100);
} elseif (function_exists('imagepng')) {
// Для PNG-файлов
header('Content-Type: image/png');
imagepng($im);
} elseif (function_exists('imagewbmp')) {
// Для WBMP-файлов
header('Content-Type: image/vnd.wap.wbmp');
imagewbmp($im);
} else {
die('На этом PHP-сервере нет поддержки изображений');
}
?>
Замечание:
Проверить поддержку формата помогает функция imagetypes():
<?php
if (imagetypes() & IMG_GIF) {
header('Content-Type: image/gif');
imagegif($im);
} elseif (imagetypes() & IMG_JPG) {
/* ... и т. д. */
}
?>