代碼如下復制代碼
filename ='img/test.jpg'
$all_type=array(
"jpg" =>array("create"=>"ImageCreateFromjpeg","output"=>"imagejpeg" ,"exn"=>".jpg"),
"gif" =>array("create"=>"ImageCreateFromGIF","output"=>"imagegif" ,"exn"=>".gif"),
"jpeg" =>array("create"=>"ImageCreateFromjpeg","output"=>"imagejpeg" ,"exn"=>".jpg"),
"png" =>array("create"=>"imagecreatefrompng","output"=>"imagepng" ,"exn"=>".png"),
"wbmp" =>array("create"=>"imagecreatefromwbmp","output"=>"image2wbmp","exn"=>".wbmp")
);
$imgtype=getimagesize($filename);
$width=$imgtype[0];
$height=$imgtype[1];
$type=str_replace('image/','',$imgtype['mime']);
$func_create=$all_type[$type]['create'];
$func_output=$all_type[$type]['output'];
$x=$y=0;
if(($width* 100)>($height* 120))
{
$newwidth=ceil($height* 120/100);
$newheight=$height;
$x= ($width-$newwidth)/2;
}
elseif(($width* 100)<($height* 120))
{
$newheight=ceil($width* 100/120);
$newwidth=$width;
$y= ($height-$newheight)/2;
}
else
{
$newheight=$height;
$newwidth=$width;
}
// Load
$thumb= imagecreatetruecolor($newwidth,$newheight);
$source=$func_create($filename);
// Resize
imagecopyresized($thumb,$source, 0, 0, 0, 0,$newwidth,$newheight,$newwidth,$newheight);
// Output
$func_output($thumb,'a.jpeg');