WEB開発: PHP-GDでパソコン用の大きな画像を携帯用に縮小(比率を保って)する
最近のWEBシステム開発の現場で、パソコンとモバイルサイトの同期処理は
当たり前になっているのではないのでしょうか。
パソコン用のデータ、モバイルの用のデータそれぞれを用意するのは、
はっきり言って時間の無駄ですよね。
そこで、パソコン用の馬鹿でかい画像ファイルを、現状携帯のWEB表示(240×320)で標準のサイズにリサイズするプログラムを作ってみました。
GD, ImageMagick などいろいろと画像用のライブラリは存在するのですが、PHPに標準搭載になっているGDを今回は使用しております。
比率を保ったまま、携帯用のサイズへ変換するPHP!シンプルなプログラムなので後はご自由にカスタマイズしてお楽しみ下さい。
ImageMagickだと、比率の変換が標準でついているんですよね~(-_-)zzz
携帯用の画像に変換するPHPコード
1 |
$file = $_GET['file']; // 画像ファイル $x = 240; // 横サイズ $y = 320; // 縦サイズ $q = 60; // 画質 if(is_file($file)){ $size = getimagesize($file); if($size[0] > $x){ $y = $x * $size[1] / $size[0]; } elseif($size[1] > $y){ $x = $y * $size[0] / $size[1]; } else{ $x = $size[0]; $y = $size[1]; } $img1 = ImageCreateFromJPEG($file); $img2 = imageCreatetRuecolor($x, $y); imageCopyResampled($img2, $img1, 0, 0, 0, 0, $x, $y, $size[0], $size[1]); header("Content-type: image/jpeg"); imagejpeg($img2, NULL, $q); imagedestroy($img1); imagedestroy($img2); } |