国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > 織夢DEDE > 正文

如何讓dedecms的縮略圖不變形

2024-07-12 08:28:37
字體:
來源:轉載
供稿:網友
織夢cms目前幾個最新版本的縮略圖生成方式都是采用縮小或拉伸的方式進行完整顯示,如果使用的圖片和縮略圖所顯示的比例不一致的話,會使得縮略圖拉伸變形。如果不改變織夢目前的縮略圖顯示方式的話,又想縮略圖不拉伸變形顯示,就得制作一個和顯示縮略圖位置大小一致或者圖片比例一致且大于縮略圖的分辨率就會不拉伸變形了。       我們可以通過下面方法修改實現,對圖片進行按寬或高進行放縮,超過縮略圖大小的部分再進行裁剪,這樣生成的縮略圖的顯示效果要比原來的要好得多了。同時也可以采取之際制作好分辨率一致的縮略圖進行顯示。       于是重新修改了一下dedecms v5.7縮略圖生成方法。       默認dedecms5.7默認生成的縮略圖,縮略圖大小設置為:100*100(直接把圖片縮小了)       看起來很不美觀,影響了圖片的觀賞性       DEDECMS v5.6縮略圖裁剪優化方法       修改如下:       打開/includes/image.func.php文件,       //縮圖片自動生成函數,來源支持bmp、gif、jpg、png       //但生成的小圖只用jpg或png格式       找到代碼第44行function ImageResize       至       //獲得GD的版本之間的代碼,用如下的代碼覆蓋(大家請注意備份)。    function ImageResize($srcFile,$toW,$toH,$toFile="") { global $cfg_photo_type; if($toFile=="") {    $toFile = $srcFile; } $info = ""; $srcInfo = GetImageSize($srcFile,$info); switch ($srcInfo[2]) {    case 1:     if(!$cfg_photo_type['gif'])     {      return false;     }     $im = imagecreatefromgif($srcFile);     break;    case 2:     if(!$cfg_photo_type['jpeg'])     {      return false;     }     $im = imagecreatefromjpeg($srcFile);     break;    case 3:     if(!$cfg_photo_type['png'])     {      return false;     }     $im = imagecreatefrompng($srcFile);     break;    case 6:     if(!$cfg_photo_type['bmp'])     {      return false;     }     $im = imagecreatefromwbmp($srcFile);     break; } $srcW=ImageSX($im); $srcH=ImageSY($im); if($srcW<=$toW && $srcH<=$toH ) {    return true; } //縮略生成并裁剪 $newW = $toH * $srcW / $srcH;            $newH = $toW * $srcH / $srcW; if($newH >= $toH) {    $ftoW = $toW;    $ftoH = $newH; } else {                      $ftoW = $newW;    $ftoH = $toH; }            if($srcW>$toW||$srcH>$toH) {    if(function_exists("imagecreatetruecolor"))    {     @$ni = imagecreatetruecolor($ftoW,$ftoH);     if($ni)     {      imagecopyresampled($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);     }     else     {      $ni=imagecreate($ftoW,$ftoH);      imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);     }    }    else    {     $ni=imagecreate($ftoW,$ftoH);     imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);    }    //裁剪圖片成標準縮略圖    $new_imgx = imagecreatetruecolor($toW,$toH);    if($newH >= $toH)    {     imagecopyresampled($new_imgx,$ni,0,0,0,($newH - $toH)/2,$toW,$toH,$toW,$toH);    }    else    {     imagecopyresampled($new_imgx,$ni,0,0,($newW - $toW)/2,0,$toW,$toH,$toW,$toH);    }    switch ($srcInfo[2])    {     case 1:      imagegif($new_imgx,$toFile);      break;     case 2:      imagejpeg($new_imgx,$toFile,85);      break;     case 3:      imagepng($new_imgx,$toFile);      break;     case 6:      imagebmp($new_imgx,$toFile);      break;     default:      return false;    }    imagedestroy($new_imgx);    imagedestroy($ni); } imagedestroy($im); return true; }

 

  更多1  
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高碑店市| 安丘市| 长治市| 格尔木市| 砚山县| 西华县| 休宁县| 邢台市| 吉水县| 泾源县| 呼玛县| 阳西县| 五家渠市| 梨树县| 萝北县| 黄浦区| 临城县| 吉木萨尔县| 平舆县| 巫山县| 昭平县| 晋江市| 静海县| 犍为县| 桐乡市| 广南县| 耿马| 丰顺县| 家居| 乌兰浩特市| 昭通市| 大城县| 库伦旗| 炎陵县| 论坛| 白水县| 英吉沙县| 陇川县| 孟津县| 东乌珠穆沁旗| 陵川县|