PHP图片缩放裁剪
代码
/** * 裁剪图片 * 不足地方拉伸,不产生变形,不留下空白 * @param $src_file //来源物理路径 * @param $dst_file //裁剪后保存的物理路径 * @param int $new_width 宽度 */ function image_resize($src_file, $dst_file, $new_width=400) { $type = exif_imagetype($src_file); //打开来源图片 switch($type) { case IMAGETYPE_JPEG : //存储图像 $a = imagecreatefromjpeg($src_file); break; case IMAGETYPE_PNG : $a = imagecreatefrompng($src_file); break; case IMAGETYPE_GIF : $a = imagecreatefromgif($src_file); break; default : break; } // 将图片宽高获取到 list($width, $height) = getimagesize($src_file); //定义百分比,缩放到0.1大小 $percent = $new_width/$width; $new_height = $height * $percent; //新高度 //创建新图片 $new_image = imagecreatetruecolor($new_width, $new_height); //将原图$image按照指定的宽高,复制到$new_image指定的宽高大小中 imagecopyresampled($new_image, $a, 0, 0, 0, 0, $new_width, $new_height, $width, $height); switch($type) { case IMAGETYPE_JPEG : //存储图像 imagejpeg($new_image, $dst_file, 90); break; case IMAGETYPE_PNG : imagepng($new_image, $dst_file, 90); break; case IMAGETYPE_GIF : imagegif($new_image, $dst_file); break; default : break; } }
若文章对您有帮助,帮忙点个赞!
(微信扫码即可登录,无需注册)