imagegif

(PHP 4, PHP 5, PHP 7)

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

Описание

imagegif ( resource $image [, mixed $to = NULL ] ) : bool

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

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

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

image

Ресурс изображения, возвращаемый одной из функций создания изображений, например, такой как imagecreatetruecolor().

filename

Путь, или открытый потоковый ресурс (который автоматически закрывается после завершения функции), для сохранения файла. Если не установлен или равен NULL, изображение будет выведено в поток вывода в бинарном виде.

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

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

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

Однако, если libgd не может вывести изображения, эта функция вернет TRUE.

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

Версия Описание
5.4.0 Добавлена возможность использовать поток типа resource для to.

Примеры

Пример #1 Вывод изображения, используя imagegif()

<?php
// Создание изображения
$im imagecreatetruecolor(100100);

// Создание белого фона
imagefilledrectangle($im0099990xFFFFFF);

// Рисование текста на изображении
imagestring($im34020'GD библиотека'0xFFBA00);

// Вывод изображения в броузер
header('Content-Type: image/gif');

imagegif($im);
imagedestroy($im);
?>

Пример #2 Преобразование PNG в GIF, используя imagegif()

<?php

// Загрузка PNG
$png imagecreatefrompng('./php.png');

// Сохранение как GIF
imagegif($png'./php.gif');

// Освобождение памяти
imagedestroy($png);

// готово
echo 'Преобразование PNG в GIF успешно завершено!';
?>

Примечания

Замечание:

Поддержка GIF была исключена из GD библиотеки в версии 1.6 и возвращена обратно в 2.0.28. Эта функция недоступна в промежутке этих версий. За дополнительной информацией обращайтесь на сайт » Проекта GD.

Следующий пример кода позволит вам писать PHP приложения, которые будут проще портироваться на разные системы. В нем используется автоопределение типа GD поддержки доступной в данный момент. Замените строки: header ("Content-Type: image/gif"); imagegif ($im); на более переносимые:

<?php
// Создание нового изображения
$im imagecreatetruecolor(100100);

// Какие-либо операции с изображением

// Обработка вывода
if(function_exists('imagegif'))
{
    
// для GIF
    
header('Content-Type: image/gif');

    
imagegif($im);
}
elseif(
function_exists('imagejpeg'))
{
    
// для JPEG
    
header('Content-Type: image/jpeg');

    
imagejpeg($imNULL100);
}
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
{
    
imagedestroy($im);

    die(
'В этом PHP сервере нет поддержки изображений');
}

// Если не поддерживается ни один из форматов 
// освободим память
if($im)
{
    
imagedestroy($im);
}
?>

Замечание:

Вы можете использовать функцию imagetypes() для проверки, какие форматы поддерживаются:

<?php
if(imagetypes() & IMG_GIF)
{
    
header('Content-Type: image/gif');
    
imagegif($im);
}
elseif(
imagetypes() & IMG_JPG)
{
    
/* ... и т.д. */
}
?>

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

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