[PHP-users 19631]画像をきれいに縮小する方法

kato @ officeants.net kato @ officeants.net
2004年 1月 1日 (木) 02:13:21 JST


はじめて投稿します。
加藤と申します。


PHP でWEBサイトを構築しているのですが、バージョンなどは下記の通りで
す。
PHP:4.31
OS: FreeBSD 4.2
Web Server: Apache 1.3.12

大画像をサーバー上で縮小したいのですが、
	$new_img = $pass."/".$id."/thumb.jpg";//小さい画像(この画像を生成したい)
	$old_img = $pass."/".$id.".jpg";//大画像

	if(is_dir($pass."/".$id)){
		unlink($new_img);
	}else{
		mkdir($pass."/".$id);
	}

	//元の画像のサイズを求める
	list($old_width, $old_height, $old_type, $old_attr) =
getimagesize($old_img);

	//画像の縮小
	$src_im = ImageCreateFromJPEG($old_img);//元画像
	$dst_im = ImageCreate($thumbwidth, $thumbwidth);//先画像
	if($old_width<$old_height){//縦が長い
		imagecopyresampled($dst_im, $src_im, 0, 0, 0,
($old_height-$old_width)/2, $thumbwidth, $thumbwidth, $old_width,
$old_width);
	}else{//横が長い
		imagecopyresampled($dst_im, $src_im, 0, 0, ($old_width-$old_height)/2,
0, $thumbwidth, $thumbwidth, $old_height, $old_height);
	}
	ImageJPEG($dst_im, $new_img);
	ImageDestroy($dst_im);
	ImageDestroy($src_im);
として画像を縮小していますが、確かに縮小はできるのですが、
出来上がった画像がとても汚く、きれいな方法はないでしょうか?
ちなみにサーバーにソフトをインストールする方法でもかまわないのですが。
どうぞよろしくお願い致します。



PHP-users メーリングリストの案内