imagegif

(PHP 3, PHP 4 , PHP 5)

imagegif -- ブラウザーまたはファイルへ画像を出力する

説明

int imagegif ( resource image [, string filename])

imagegif()は画像im からGIFファイルfilenameを作成します。 引数imimagecreate()関数 から返されたものです。

画像フォーマットは、imagecolortransparent()を 用いて画像を透明化しない限りGIF87aとなります。 透明化した場合の画像フォーマットはGIF89aとなります。

引数filenameはオプションで、省略した場合は、未加工の画像 ストリームが直接出力されます。header()関数を 用いて content-type image/gif を送出すれば、直接GIF 画像を出力するPHPスクリプトを作成することができます。

注意: GDライブラリバージョン1.6以降で GIFサポートが完全に削除されたので、該当する 版のGDライブラリではこの関数を使用することは できません。GDライブラリがGIFを サポートするバージョンを出す2004年なかごろ以降にサポートが再開される と期待されています。詳しくはGD Project のサイトを見てください。

以下の短いコードにより利用可能なGDサポートの型を自動検出し、 汎用性のあるPHPアプリケーションを書くことが可能です。 Header("Content-type: image/gif");ImageGIF($im);の部分をこのより柔軟性のあ るコードに置換して下さい。

<?php
if (function_exists("imagegif")) {
    
header ("Content-type: image/gif");
    
imagegif ($im);
}
elseif (
function_exists("imagejpeg")) {
    
header ("Content-type: image/jpeg");
    
imagejpeg ($im, "", 0.5);
}
elseif (
function_exists("imagepng")) {
    
header ("Content-type: image/png");
    
imagepng ($im);
}
elseif (
function_exists("imagewbmp")) {
    
header ("Content-type: image/vnd.wap.wbmp");
    
imagewbmp ($im);
}
else
    die(
"No image support in this PHP server");
?>

注意: バージョン4.0.2以降および3.0.18以降では、種々のイメージ関数のサ ポートを調べるために function_exists() の代 わりに関数 imagetypes() を使用することが可能 です。

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

imagepng(), imagewbmp(), imagejpeg() and imagetypes() も参照下さい。