ImageCreate()/ImageCreateTrueColor()
* イメージを新規に作成するhttp://www.scollabo.com/banban/php/ref/ref_imagecreate.html
http://search.net-newbie.com/php/function.imagecreatetruecolor.html
imagedestroy()
* PHPで表現された画像を、メモリ上から解放するhttp://www.scollabo.com/banban/php/ref/ref_imagedestroy.html
ImageGIF()/ImagePNG()/ImageJPEG()
* 画像をブラウザあるいはファイルに出力するhttp://php.net/manual/ja/function.imagegif.php
画像 image から GIF ファイル filename を作成 bool imagegif ( resource $image [, string $filename ] )
ImageCopyResampled()
* イメージの一部をコピー、伸縮するhttp://php.net/manual/ja/function.imagecopyresampled.php
ImageCopyResampled( 【コピー先の画像リンクリソース】, 【コピー元の画像リンクリソース】, 【コピー先の x 座標】, 【y 座標】, 【コピー元の x 座標】, 【y 座標】, 【コピー先の 幅】, 【高さ】, 【コピー元の 幅】, 【高さ】 );
画像の扱い
画像の幅と高さの取得
例
$image = "http://i.yimg.jp/images/socialproducts/common/nophoto/nophoto_100x100.gif"; $size = GetImageSize($image); // 幅の取得 $width = $size[0]; // 高さの取得 $heigth = $size[1];
画像の種類の判定
例
$sourceImage = "./testData.gif"; $size = GetImageSize($sourceImage); // 幅の取得 $width = $size[0]; // 高さの取得 $heigth = $size[1]; switch ($size[2]) { case IMAGETYPE_GIF: $newImage = ImageCreate(15, 15); $image = imagecreatefromgif($image); break; case IMAGETYPE_PNG: $newImage = ImageCreateTrueColor(15, 15); $image = imagecreatefrompng($image); break; case IMAGETYPE_JPEG: default: $newImage = ImageCreateTrueColor(15, 15); $image = imagecreatefromjpeg($image); } ImageCopyResampled($newImage, $image, 0, 0, 0, 0, 15, 15, $width, $height); // output switch ($size[2]) { case IMAGETYPE_GIF: ImageGIF($newImage, $sourceImage); break; case IMAGETYPE_PNG: ImagePNG($newImage, $sourceImage); break; case IMAGETYPE_JPEG: default: ImageJPEG($newImage, $sourceImage); } imagedestroy($image); imagedestroy($newImage);