原文来自:https://www.zixuephp.com
DedeCMS图集中缩略图不能显示的解决方法
缩略图不显示的原因在于:你上传的图片尺寸同时小于DEDE后台设置的默认缩略图尺寸,图集中缩略图不显示的原因在于,你上传的图片尺寸同时小于DEDE后台设置的默认缩略图尺寸.
解决方式有二种:
其一:在后台把默认缩略图宽或高的一个尺寸调小,让你上传的图片二个尺寸中的一个大于,默认值.
其二:就是通过修改程序的方式来解决,本方法在DEDE5.5GBK版下测试通过,在文件include/image.func.php中找到
if($srcW<=$toW && $srcH<=$toH ) return true;替换成如下代码:
- //增加小于缩略图尺寸处理开始
- if($srcW<=$toW&&$srcH<=$toH)
- {
- $ftoH=$toH;
- $ftoW=$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);
- }
- switch($srcInfo[2])
- {
- case1:
- imagegif($ni,$toFile);
- break;
- case2:
- imagejpeg($ni,$toFile,100);
- break;
- case3:
- imagepng($ni,$toFile);
- break;
- case6:
- imagebmp($ni,$toFile);
- break;
- default:
- returnfalse;
- }
- imagedestroy($ni);
- }
- //增加小于缩略图尺寸处理结束
当然,如果这个时候还没解决,就考虑下浏览器问题吧,IE模式下,打开Internet选项->高级->使用兼容性视图自动恢复页面布局错误,刷新应该就OK了。