DedeCMS图集中缩略图不能显示的解决方法 – DeDecm


avatar
pcwnas 2023-04-21 196

原文来自:https://www.zixuephp.com

DedeCMS图集中缩略图不能显示的解决方法

缩略图不显示的原因在于:你上传的图片尺寸同时小于DEDE后台设置的默认缩略图尺寸,图集中缩略图不显示的原因在于,你上传的图片尺寸同时小于DEDE后台设置的默认缩略图尺寸.

解决方式有二种:

其一:在后台把默认缩略图宽或高的一个尺寸调小,让你上传的图片二个尺寸中的一个大于,默认值.

其二:就是通过修改程序的方式来解决,本方法在DEDE5.5GBK版下测试通过,在文件include/image.func.php中找到

if($srcW<=$toW && $srcH<=$toH ) return true;替换成如下代码:

  1. //增加小于缩略图尺寸处理开始
  2. if($srcW<=$toW&&$srcH<=$toH)
  3. {
  4. $ftoH=$toH;
  5. $ftoW=$toH;
  6. if(function_exists("imagecreatetruecolor"))
  7. {
  8. @$ni=imagecreatetruecolor($ftoW,$ftoH);
  9. if($ni)
  10. {
  11. imagecopyresampled($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);
  12. }
  13. else
  14. {
  15. $ni=imagecreate($ftoW,$ftoH);
  16. imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);
  17. }
  18. }
  19. else
  20. {
  21. $ni=imagecreate($ftoW,$ftoH);
  22. imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);
  23. }
  24. switch($srcInfo[2])
  25. {
  26. case1:
  27. imagegif($ni,$toFile);
  28. break;
  29. case2:
  30. imagejpeg($ni,$toFile,100);
  31. break;
  32. case3:
  33. imagepng($ni,$toFile);
  34. break;
  35. case6:
  36. imagebmp($ni,$toFile);
  37. break;
  38. default:
  39. returnfalse;
  40. }
  41. imagedestroy($ni);
  42. }
  43. //增加小于缩略图尺寸处理结束

当然,如果这个时候还没解决,就考虑下浏览器问题吧,IE模式下,打开Internet选项->高级->使用兼容性视图自动恢复页面布局错误,刷新应该就OK了。