array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.imagegif.php', 1 => 'imagegif', ), 'up' => array ( 0 => 'ref.image.php', 1 => 'Функции GD и функции для работы с изображениями', ), 'prev' => array ( 0 => 'function.imagegetinterpolation.php', 1 => 'imagegetinterpolation', ), 'next' => array ( 0 => 'function.imagegrabscreen.php', 1 => 'imagegrabscreen', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/image/functions/imagegif.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(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);
imagedestroy($im);
?>
Пример #2 Преобразование PNG в GIF, используя imagegif()
<?php
// Загрузка PNG
$png = imagecreatefrompng('./php.png');
// Сохранение как GIF
imagegif($png, './php.gif');
// Освобождение памяти
imagedestroy($png);
// готово
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
{
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)
{
/* ... и т.д. */
}
?>