缩略图不清晰(PHPCMS如何解决缩略图不清楚)
导读:PHPCMS如何解决缩略图不清楚...
PHPCMS如何解决缩略图不清楚
首先在phpcms下面的libs中找到classes目录并打开;然后找到“image.class.php ”这个文件并打开;最后搜索到调用“$imagefun() ”函数的地方并传第三个参数为90即可 。
搜索到下这个函数
function thumb($image, $filename = , $maxwidth = 200, $maxheight = 200, $suffix=, $autocut = 0, $ftp = 0) { if(!$this->thumb_enable || !$this->check($image)) return false; $info = image::info($image); if($info === false) return false; $srcwidth = $info[width]; $srcheight = $info[height]; $pathinfo = pathinfo($image); $type = $pathinfo[extension]; if(!$type) $type = $info[type]; $type = strtolower($type); unset($info); $creat_arr = $this->getpercent($srcwidth,$srcheight,$maxwidth,$maxheight); $createwidth = $width = $creat_arr[w]; $createheight = $height = $creat_arr[h]; $psrc_x = $psrc_y = 0; if($autocut && $maxwidth > 0 && $maxheight > 0) { if($maxwidth/$maxheight<$srcwidth/$srcheight && $maxheight>=$height) { $width = $maxheight/$height*$width; $height = $maxheight; }elseif($maxwidth/$maxheight>$srcwidth/$srcheight && $maxwidth>=$width) { $height = $maxwidth/$width*$height; $width = $maxwidth; } $createwidth = $maxwidth; $createheight = $maxheight; } $createfun = imagecreatefrom.($type==jpg ? jpeg : $type); $srcimg = $createfun($image); if($type != gif && function_exists(imagecreatetruecolor)) $thumbimg = imagecreatetruecolor($createwidth, $createheight); else $thumbimg = imagecreate($width, $height); if(function_exists(imagecopyresampled)) imagecopyresampled($thumbimg, $srcimg, 0, 0, $psrc_x, $psrc_y, $width, $height, $srcwidth, $srcheight); else imagecopyresized($thumbimg, $srcimg, 0, 0, $psrc_x, $psrc_y, $width, $height, $srcwidth, $srcheight); if($type==gif || $type==png) { $background_color = imagecolorallocate($thumbimg, 0, 255, 0); // 指派一个绿色 imagecolortransparent($thumbimg, $background_color); // 设置为透明色 ,若注释掉该行则输出绿色的图 } if($type==jpg || $type==jpeg) imageinterlace($thumbimg, $this->interlace); $imagefun = image.($type==jpg ? jpeg : $type); if(empty($filename)) $filename = substr($image, 0, strrpos($image, .)).$suffix...$type; $imagefun($thumbimg, $filename); imagedestroy($thumbimg); imagedestroy($srcimg); if($ftp) { @unlink($image); } return $filename; }然后找到
if($type==jpg || $type==jpeg) imageinterlace($thumbimg, $this->interlace); $imagefun = image.($type==jpg ? jpeg : $type); if(empty($filename)) $filename = substr($image, 0, strrpos($image, .)).$suffix...$type; $imagefun($thumbimg, $filename); imagedestroy($thumbimg); imagedestroy($srcimg);改为
if($type==jpg || $type==jpeg) imageinterlace($thumbimg, $this->interlace); $imagefun = image.($type==jpg ? jpeg : $type); if(empty($filename)) $filename = substr($image, 0, strrpos($image, .)).$suffix...$type; $imagefun($thumbimg, $filename, 90); imagedestroy($thumbimg); imagedestroy($srcimg);即可解决问题
推荐教程:《PHP教程》
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!