使用thinkImage时发现jpg的缩率图质量没有预期的好,最后找到对应代码改了一下,现在分享给大家。
使用thinkImage时发现jpg的缩率图质量没有预期的好,最后找到对应代码改了一下,现在分享给大家。
我用的是普通的GD库。
打开thinkphp库里的代码,具体路径如下:
\thinkphp\Extend\Library\ORG\Util\Image\Driver\ImageGd.class.php
大致在100行左右。
//保存图像
if('gif' == $type && !empty($this->gif)){
$this->gif->save($imgname);
} else {
$fun = "image{$type}";
$fun($this->img, $imgname);
}
改成:
//保存图像
if('gif' == $type && !empty($this->gif)){
$this->gif->save($imgname);
} else {
$fun = "image{$type}";
if($type=='jpeg'){
$fun($this->img, $imgname,100);
}else{
$fun($this->img, $imgname);
}
}
其实很简单,只是thinkphp对jpeg图像处理采用了系统默认的75质量,这是不够的。
简单改动,小小挫建,如有不当,请指正。