原文来自:https://www.zixuephp.com
如何解决dedecms提取缩略图不变形问题
DEDECMS缩略图变形尤其体现在图文资讯栏目里,默认的是img的HTML代码里限制图片的高和宽,但DEDECMS实际的缩略图大小则是按照比例缩小的,未必和HTML代码里限制的相同,最终导致了DEDECMS缩略图变形,这个只有通过上传时对DEDECMS缩略图进行裁剪,保证其不变性,解决方法如下.
找到include/image.func.php,修改:
- if($toWH<=$srcWH)
- {
- $ftoW=$toW;
- $ftoH=$ftoW*($srcH/$srcW);
- }
- else
- {
- $ftoH=$toH;
- $ftoW=$ftoH*($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;
- }
- //更改
- ($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH)
- //为
- ($ni,$im,0,0,$src_X,$src_Y,$ftoW,$ftoH,$srcW,$srcH)
修改后有一特征:发布文章,编辑器里上传图片时.
1、若不选择生成缩略图
原图片路径类似uploads/090620/1_124844_1.jpg
缩略图路径类似uploads/allimg/090620/1_124TQD6.jpg
文章里显示为原图片.
2、若选择生成缩略图
原图片路径类似uploads/090620/1_124844_1.jpg
缩略图路径类似uploads/090620/1_124844_1_lit.jpg
文章里显示为缩略图,本人不选择生成缩略图,用JS代码来控制图片大小,以防止顶破DIV,使网页变形.