PHP等比例压缩图片的实例代码
具体代码如下所示:
/**
*desription压缩图片
*@paramsting$imgsrc图片路径
*@paramstring$imgdst压缩后保存路径
*/
publicfunctioncompressedImage($imgsrc,$imgdst){
list($width,$height,$type)=getimagesize($imgsrc);
$new_width=$width;//压缩后的图片宽
$new_height=$height;//压缩后的图片高
if($width>=600){
$per=600/$width;//计算比例
$new_width=$width*$per;
$new_height=$height*$per;
}
switch($type){
case1:
$giftype=check_gifcartoon($imgsrc);
if($giftype){
header('Content-Type:image/gif');
$image_wp=imagecreatetruecolor($new_width,$new_height);
$image=imagecreatefromgif($imgsrc);
imagecopyresampled($image_wp,$image,0,0,0,0,$new_width,$new_height,$width,$height);
//90代表的是质量、压缩图片容量大小
imagejpeg($image_wp,$imgdst,90);
imagedestroy($image_wp);
imagedestroy($image);
}
break;
case2:
header('Content-Type:image/jpeg');
$image_wp=imagecreatetruecolor($new_width,$new_height);
$image=imagecreatefromjpeg($imgsrc);
imagecopyresampled($image_wp,$image,0,0,0,0,$new_width,$new_height,$width,$height);
//90代表的是质量、压缩图片容量大小
imagejpeg($image_wp,$imgdst,90);
imagedestroy($image_wp);
imagedestroy($image);
break;
case3:
header('Content-Type:image/png');
$image_wp=imagecreatetruecolor($new_width,$new_height);
$image=imagecreatefrompng($imgsrc);
imagecopyresampled($image_wp,$image,0,0,0,0,$new_width,$new_height,$width,$height);
//90代表的是质量、压缩图片容量大小
imagejpeg($image_wp,$imgdst,90);
imagedestroy($image_wp);
imagedestroy($image);
break;
}
}
总结
以上所述是小编给大家介绍的PHP等比例压缩图片的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。