织梦cms的缩列图形变的难题一直为很多人所抨击,但是这一能够自身改动缩列图处理,仅仅工程量清单十分的大。即便是织梦cmsDedeCMS5.7版本号,也会存有缩列图形变失确实难题。织梦cmsDedeCMS缩列图生成方式全是选用变小或拉申的方法开展详细显示信息,假如应用的照片和缩列图所显示信息的占比不一致得话,会促使缩列图拉申形变。
如何解决织梦cmsDedeCMS5.7缩列图形变的难题呢?還是改动织梦cms获得缩列图的涵数。DedeCMS5.7的涵数是在/include/helpers/文件夹名称中的image.helper.php里边。改动以前,一定要先向相匹配的文档开展备份数据,避免 导致没法意料的程序流程不正确。先寻找以下的编码:
$srcW=ImageSX($im);
$srcH=ImageSY($im);
if($srcW<=$toW && $srcH<=$toH )
return TRUE;
$toWH=$toW/$toH;
$srcWH=$srcW/$srcH;
if($toWH<=$srcWH){
$ftoW=$toW;
$ftoH=$ftoW*($srcH/$srcW);
}
else
{
$ftoH=$toH;
$ftoW=$ftoH*($srcW/$srcH);
}
把这部分代码修改为如下的代码:
$srcW=ImageSX($im);
$srcH=ImageSY($im);
if($srcW<=$toW && $srcH<=$toH )
return TRUE;
$toWH=$toW/$toH;
$srcWH=$srcW/$srcH;
$ftoH=$toH;$ftoW=$toW;
if ($toWH<=$srcWH) {
$src_Y = 0;
$src_X = ($srcW-$srcH*$toWH)/2;
$srcW = $srcH*$toWH;
}
else
{
$src_X = 0;
$src_Y = ($srcH-$srcW/$toWH)/2;
$srcH = $srcW/$toWH;
}
比照两一部分编码,大家就能见到差别所属了。多了分辨照片的总面积等內容,那样就可以完成对图片开展按宽或高开展放缩,超出缩列图尺寸的一部分再开展剪裁的作用。历经那样解决获得的缩列图比织梦cms默认设置的缩列图要清楚许多,除开上边早已提及的缺陷外。