php实现等比例压缩图片
发布时间:2020-12-13 21:30:44 所属栏目:PHP教程 来源:网络整理
导读:?现在一般手机拍摄的照片文件都比较大,但是上传到服务器我们不想保存这么大的文件。 /** * desription 压缩图片 * @param sting $imgsrc 图片路径 * @param string $imgdst 压缩后保存路径 */ public function compressedImage($imgsrc,$imgdst) { list($wi
?现在一般手机拍摄的照片文件都比较大,但是上传到服务器我们不想保存这么大的文件。 /** * desription 压缩图片 * @param sting $imgsrc 图片路径 * @param string $imgdst 压缩后保存路径 */ public function compressedImage($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) { case 1: $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,$new_width,$new_height,$width,$height); //90代表的是质量、压缩图片容量大小 imagejpeg($image_wp,$imgdst,90); imagedestroy($image_wp); imagedestroy($image); } break; case 2: header(‘Content-Type:image/jpeg‘); $image_wp = imagecreatetruecolor($new_width,$new_height); $image = imagecreatefromjpeg($imgsrc); imagecopyresampled($image_wp,$height); //90代表的是质量、压缩图片容量大小 imagejpeg($image_wp,90); imagedestroy($image_wp); imagedestroy($image); break; case 3: header(‘Content-Type:image/png‘); $image_wp = imagecreatetruecolor($new_width,$new_height); $image = imagecreatefrompng($imgsrc); imagecopyresampled($image_wp,90); imagedestroy($image_wp); imagedestroy($image); break; } } 来源:https://www.aspzz.cn/article/144518.htm (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |