輸出圖像到瀏覽器或檔案。

imagegif

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

imagegif輸出圖像到瀏覽器或檔案。

說明

imagegif(resource $image, string $filename = ?): bool

imagegif()image 影象以 filename 為檔名建立一個 GIF 影象。image 參數是 imagecreate()imagecreatefrom* 函式的返回值。

影象格式為 GIF87a。如果用了 imagecolortransparent() 使影象為透明,則其格式為 GIF89a

參數

image

由圖像建立函式(例如imagecreatetruecolor())返回的 GdImage 對象。

filename

檔案儲存的路徑或者已打開的流資源(此方法返回后自動關閉該流資源),如果未設定或為 null,將會直接輸出原始圖像流。

返回值

成功時返回 true, 或者在失敗時返回 false

範例

示例 #1 使用 imagegif() 輸出一個影象

<?php
// 建立新的影象實例
$im imagecreatetruecolor(100100);

// 設定背景為白色
imagefilledrectangle($im0099990xFFFFFF);

//在影象上寫字
imagestring($im34020'GD Library'0xFFBA00);

// 輸出影象到瀏覽器
header('Content-Type: image/gif');

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

示例 #2 使用 imagegif() 將一個 PNG 轉換成 GIF

<?php

// 載入 PNG
$png imagecreatefrompng('./php.png');

// 以 GIF 儲存影象
imagegif($png'./php.gif');

// 釋放記憶體
imagedestroy($png);

// 完工
echo 'Converted PNG image to GIF with success!';
?>

註釋

注意:

不過從 GD 庫 1.6 起所有的 GIF 支援都移除了,並在版本 2.0.28 中加了回來。如果使用這些 版本之間的 GD 庫時本函式不可用。 更多資訊見 » GD Project 站點。

以下程式碼段通過自動檢測 GD 支援的影象型別來寫出移植性更好的 PHP 程式。用更靈活的程式碼替代了原來的 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(
'No image support in this PHP server');
}

// 如果發現影象是以上的格式之一,就從記憶體中釋放
if($im)
{
    
imagedestroy($im);
}
?>

注意:

自 PHP 3.0.18 和 4.0.2 起可以用 imagetypes() 函式代替 function_exists() 來檢查是否支援某種影象格式:

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

參見

  • imagepng() - 以 PNG 格式將影象輸出到瀏覽器或檔案
  • imagewbmp() - 以 WBMP 格式將影象輸出到瀏覽器或檔案
  • imagejpeg() - 輸出圖像到瀏覽器或檔案。
  • imagetypes() - 返回目前 PHP 版本所支援的影象型別

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *