(PHP 4, PHP 5)
imagecreatefrompng — ファイルまたは URL から新規 PNG 画像を作成する
imagecreatefrompng()は引数 filename から得られる画像を表す画像 ID を返します。
imagecreatefrompng() はエラー時に空の文字列を 返します。エラーメッセージも出力されますが、この場合、残念なことに ブラウザ上のリンクは壊れてしまいます。 デバッグを簡単にするために以下の例ではエラー表示用 PNG を出力しています。
例1 作成時のエラーを処理する例
<?php
function LoadPNG($imgname)
{
$im = @imagecreatefrompng($imgname); /* オープンします */
if (!$im) { /* 失敗したかどうかを調べます */
$im = imagecreatetruecolor(150, 30); /* 空の画像を作成します */
$bgc = imagecolorallocate($im, 255, 255, 255);
$tc = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 150, 30, $bgc);
/* エラーメッセージを出力します */
imagestring($im, 1, 5, 5, "Error loading $imgname", $tc);
}
return $im;
}
header("Content-Type: image/png");
$img = LoadPNG("bogus.image");
imagepng($img);
imagedestroy($img);
?>
上の例の出力は、たとえば 以下のようになります。
fopen wrappers が有効の場合、この関数のファイル名として URL を使用することができます。ファイル名の指定方法に関する詳細は fopen()、サポートされる URL プロトコルの種類 については、(例えば)サポートされるプロトコル/ラッパー を参照してください。
PNG 画像へのパス。
成功した場合に画像リソース ID、エラー時に FALSE を返します。
PHP 4.3.0 より前のバージョンの Windows 版 PHP は、現在この関数に関してリモートファイルアクセス機能を サポートしていません。これは、allow_url_fopen を 有効にした場合でも同様です。