織夢DedeCMS默認(rèn)的生成縮略圖只有一個規(guī)格大小的尺寸,不能滿足大部分的模版需求,這樣就會造成很多模版生成的縮略圖都是不清晰,失真和模糊的,今天就教大家如何避免DedeCMS生成的縮略圖失真模糊。
具體方法如下:
一、打開設(shè)置:系統(tǒng)-附件設(shè)置,把系統(tǒng)默認(rèn)寬度和高度設(shè)為大于我們?nèi)菊{(diào)用縮略圖的最大尺寸。
二、打開 include/extend.func.php,在最后一個?>前加入代碼:
function thumb($imgurl, $width, $height, $bg = true)
{
global $cfg_mainsite,$cfg_multi_site;
$thumb = eregi("http://",$imgurl)?str_replace($cfg_mainsite,'',$imgurl):$imgurl;
list($thumbname,$extname) = explode('.',$thumb);
$newthumb = $thumbname.'_'.$width.'_'.$height.'.'.$extname;
if(!$thumbname || !$extname || !file_exists(DEDEROOT.$thumb)) return $imgurl;
if(!file_exists(DEDEROOT.$newthumb))
{
include_once DEDEINC.'/image.func.php';
if($bg==true)
{
ImageResizeNew(DEDEROOT.$thumb, $width, $height, DEDEROOT.$newthumb);
}
else
{
ImageResize(DEDEROOT.$thumb, $width, $height, DEDEROOT.$newthumb);
}
}
return $cfg_multi_site=='Y'?$cfg_mainsite.$newthumb:$newthumb;
}
完成后,我們再在需要調(diào)用縮略圖的位置加上調(diào)用代碼:
[field:picname function='thumb(@me,$width,$height,$bg)'/]
代碼參數(shù)說明:
$width:縮略圖寬度(整數(shù))
$height:縮略圖高度(整數(shù))
$bg:是否用空白填補(bǔ),默認(rèn)自動填補(bǔ),背景填充顏色在系統(tǒng)-附件設(shè)置里(true/false)
舉例:
調(diào)用長寬為100像素的縮略圖:
[field:picname function='thumb(@me,100,100)'/]
保留原有比例,不自動填充(不建議):
[field:picname function='thumb(@me,100,100,false)'/]
版權(quán)聲明: 本站資源均來自互聯(lián)網(wǎng)或會員發(fā)布,如果侵犯了您的權(quán)益請與我們聯(lián)系,我們將在24小時內(nèi)刪除!謝謝!
轉(zhuǎn)載請注明: 織夢縮略圖失真模糊的完美解決方法