# imagegif

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

imagegif — 输出图象到浏览器或文件。

### 说明

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

imagegif() 从图像 `image` 在 `file` 中创建 GIF 图像。`image` 参数是 imagecreate() 或 `imagecreatefrom*` 函数的返回值。

图像格式为 GIF87a。如果用了 imagecolortransparent() 使图像为透明，则其格式为 GIF89a。

### 参数

`image`

  由图象创建函数(例如imagecreatetruecolor())返回的 GdImage 对象。

`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 Library', 0xFFBA00);
// 输出图像到浏览器
header('Content-Type: image/gif');
imagegif($im);
?>`

示例 #2 使用 imagegif() 将 PNG 图像转换成 GIF

`<?php
// 载入 PNG
$png = imagecreatefrompng('./php.png');
// 以 GIF 保存图像
imagegif($png, './php.gif');
// 完工
echo 'Converted PNG image to GIF with success!';
?>`

### 注释

> 注意:

> 以下代码段通过自动检测 GD 支持的图像类型来写出移植性更好的 PHP 程序。用更灵活的代码替代了原来的 `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('No image support in this PHP server');
> }
> ?>`

> 注意:

> 可以用 imagetypes() 函数检查是否支持某种图像格式：

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

### 参见

- imagepng() - 将 PNG 图像输出到浏览器或文件
- imagewbmp() - 输出图象到浏览器或文件。
- imagejpeg() - 输出图象到浏览器或文件。
- imagetypes() - 返回 PHP 内置支持的图像类型

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open