imagegif

(PHP 4, PHP 5, PHP 7, PHP 8)

imagegifВыводит изображение в браузер или записывает в файл

Описание

imagegif(GdImage $image, resource|string|null $file = null): bool

Функция imagegif() создаёт изображение в формате GIF в файле или ресурсе потока, который указали в аргументе file. Функция берёт за основу изображение image. Аргумент image — изображение, которое возвращает функция imagecreate() или функции семейства imagecreatefrom*.

Функция создаст файл в формате GIF87a, если только изображение не сделали прозрачным функцией imagecolortransparent(), тогда функция создаст изображение в формате GIF89a.

Список параметров

image

Объект GdImage, который вернула функция imagecreatetruecolor() или другая функция генерации изображений.

file

Путь или ресурс открытого потока, который функция автоматически закрывает после возврата значения, для сохранения файла. Функция выведет поток необработанного изображения напрямую, если параметр не установили или передали в аргументе значение null.

Возвращаемые значения

Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.

Предостережение

Функция вернёт значение true, если вывести изображение средствами библиотеки libgd невозможно.

Список изменений

Версия Описание
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) {
/* ... и т. д. */
}

?>

Смотрите также

  • imagepng() - Выводит PNG-изображение в браузер или файл
  • imagewbmp() - Выводит изображение в браузер или записывает в файл
  • imagejpeg() - Выводит изображение в браузер или записывает в файл
  • imagetypes() - Возвращает список типов изображений, поддерживаемых PHP сборкой