龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

最小失真率压缩JPG图片

时间:2014-07-22 14:49来源: 作者: 点击:
分享到:
本代码出自本人自已写的类中,如有雷同纯属巧合。本人常用于压缩jpg图片,也可以将其它格式转为jpg格式。
本代码出自本人自已写的类中,如有雷同纯属巧合。
本人常用于压缩jpg图片,也可以将其它格式转为jpg格式。
/**
 * 将图片以自定义品质,另存为JPG格式,将会删除源图片
 *
 * @param string $filename 图片名称,包含路径
 * @param int    $quality  图片品质,0到100,默认90,100为最高品质
 */
public function resaveToJpeg($filename, $quality = 90) {
	$path		= dirname($filename);
	$path		= rtrim($path, '/').'/';
	$basename	= pathinfo($filename, PATHINFO_FILENAME);
	$extName	= strtolower(pathinfo($filename, PATHINFO_EXTENSION));
	switch($extName) {
		case 'jpg':
			$im = imagecreatefromjpeg($filename);
			break;
		case 'png':
			$im = imagecreatefrompng($filename);
			break;
		case 'gif':
			$im = imagecreatefromgif($filename);
			break;
	}
	imagejpeg($im, $path.$basename.'.jpg', $quality);
	
	if(in_array($extName, array('png','gif'))) {
		@unlink($filename);
	}
	imagedestroy($im);
}
精彩图集

赞助商链接