以前写的生成高质量的缩略图函数
时间:2005-12-31 来源:放弃思考
生成高质量的缩略图函数
createDst(原图片地址,缩略图最大宽度,缩略图最大高度 ,生成缩略图地址)
*/
function createDst ($img_url,$max_width,$max_height,$dst_url='''')
{
if ( empty( $dst_url ) )//如果 $dst_url 参数未赋值的话,则缩略图生成在原图片所在的文件夹
{
$sub_url = substr($img_url,0,strrpos( $img_url,"." ));
$dst_url = $sub_url . "_dst.jpg";
}
if(!file_exists($img_url))
{
die("图片不存在");
}
$img_src = file_get_contents($img_url);
$image = ImageCreateFromString( $img_src );//用该方法获得图象,可以避免“图片格式”的问题。
$width = imageSx( $image );
$height = imageSy( $image );
$x_ratio = $max_width / $width;
$y_ratio = $max_height / $height;
if ( ($width
/*生成高质量的缩略图方法*/
$dst = imagecreatetruecolor($tn_width,$tn_height);//新建一个真彩色图像
imagecopyresampled($dst, $image, 0, 0, 0, 0,$tn_width,$tn_height,$width,$height);
//header(''Content-type: image/jpeg'');
ImageJpeg($dst, $dst_url);
ImageDestroy($image);
ImageDestroy($dst);
if(!file_exists($dst_url))
return FALSE;
else
return basename($dst_url);
}
//example 1:
createDst("test.jpg",200,200);
?>
相关阅读 更多 +