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, если возникла ошибка.

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

Однако, если 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) {
/* ... и т. д. */
}

?>

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

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