织梦图集 上传图片小于设定尺寸 缩略图生成失败的解决办法

softyun3年前cms教程115


织梦图集中,上传的图片像素宽高小于系统设置定的这个尺寸: 
较小的这些图片就会无法生成缩略图,导致图集在网页上缩略图显示X叉号,这应该是织梦DEDEcms的一个历史遗漏bug,可用下面方法修复。
/include/helpers/,这个文件中搜索,下面的代码:

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); 
        } 
 
然后用下面的大片代码替换:

$ftoW=$toH; 
[size=; font-size: inherit,inherit]                $ftoH=$toH; 
        /// 
[size=; font-size: inherit,inherit]        if( $srcH<=$toH &&  $srcW<=$toW ) 
[size=; font-size: inherit,inherit]            { 
[size=; font-size: inherit,inherit]                $ftoW=$srcW; 
[size=; font-size: inherit,inherit]                $ftoH=$srcH; 
[size=; font-size: inherit,inherit]                if(function_exists("imagecreatetruecolor")) 
[size=; font-size: inherit,inherit]                { 
[size=; font-size: inherit,inherit]                    @$ni = imagecreatetruecolor($ftoW,$ftoH); 
[size=; font-size: inherit,inherit]                    if($ni) 
 
[size=; font-size: inherit,inherit]                    { 
 
[size=; font-size: inherit,inherit]                    imagecopyresampled($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH); 
[size=; font-size: inherit,inherit]                    } 
[size=; font-size: inherit,inherit]                    else 
[size=; font-size: inherit,inherit]                    { 
[size=; font-size: inherit,inherit]                    $ni=imagecreate($ftoW,$ftoH); 
[size=; font-size: inherit,inherit]                    imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH); 
[size=; font-size: inherit,inherit]                    } 
[size=; font-size: inherit,inherit]                    } 
[size=; font-size: inherit,inherit]                else 
[size=; font-size: inherit,inherit]                { 
[size=; font-size: inherit,inherit]                    $ni=imagecreate($ftoW,$ftoH); 
[size=; font-size: inherit,inherit]                    imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH); 
[size=; font-size: inherit,inherit]                } 
[size=; font-size: inherit,inherit]                switch ($srcInfo[2]) 
[size=; font-size: inherit,inherit]                { 
[size=; font-size: inherit,inherit]                    case 1: 
[size=; font-size: inherit,inherit]                    imagegif($ni,$toFile); 
[size=; font-size: inherit,inherit]                    break; 
[size=; font-size: inherit,inherit]                    case 2: 
[size=; font-size: inherit,inherit]                    imagejpeg($ni,$toFile,100); 
[size=; font-size: inherit,inherit]                    break; 
[size=; font-size: inherit,inherit]                    case 3: 
[size=; font-size: inherit,inherit]                    imagepng($ni,$toFile); 
[size=; font-size: inherit,inherit]                    break; 
[size=; font-size: inherit,inherit]                    case 6: 
[size=; font-size: inherit,inherit]                    imagebmp($ni,$toFile); 
[size=; font-size: inherit,inherit]                    break; 
[size=; font-size: inherit,inherit]                    default: 
[size=; font-size: inherit,inherit]                    return false; 
[size=; font-size: inherit,inherit]                } 
[size=; font-size: inherit,inherit]                imagedestroy($ni); 
[size=; font-size: inherit,inherit]            } /// 
 
       $toWH=$toW/$toH; 
       $srcWH=$srcW/$srcH; 
       if($toWH<=$srcWH) 
       { 
            $ftoW=$toW; 
            $ftoH=$ftoW*($srcH/$srcW); 
        } 
        else 
 
        { 
 
            $ftoH=$toH; 
 
            $ftoW=$ftoH*($srcW/$srcH); 
 
       } 
这样织梦上传的图,就不会显示x号了。希望可以帮助到你。

标签: dedecms
免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

织梦cms批量取消审核文档的实现方法

织梦cms批量取消审核文档的实现方法教你来实现在原来dede文章批量管理的地方 添加一个 “取消审核” : 实现方法: 修改管理目录 默认为dede下的文件:archives_do.php  插入以下...

织梦dedecms转换迁移其他免费开源cms的办法

织梦dedecms开始收取5800元授权费用了!一则通知让开源10年之久的织梦也要开始步入版权收费的模式,这就导致很多站长现在开始更换新的cms系统,而各大CMS平台也已经陆续推出dede转换工具,体...

最新织梦dedecms转WordPress方法(脚本一键转换)

dedecms开始对网站进行商业授权,织梦cms授权一个域名就要5800元,一般小站长肯定接受不了,用织梦CMS搭建站群的站长就更别说了,没授权的将被起诉,听说通过AI已经完成了取证,这种情况肯定一告...

dedecms如何转pbootcms教程?织梦无损路径不变转换Pbootcms方法

dedecms如何转pbootcms教程?随着织梦dedecms的开始收费,很多朋友都在找免费的开源cms以便更换,今天这里就来为大家dedecms如何转pbootcms教程,织梦数据无损栏目路径不变...

织梦cms收费怎么办?可迁移搬家更换免费CMS系统

织梦cms收费怎么办?“织梦cms系统收费”的公告,惊爆各大站长群,无数业内大佬和专业人士奔走相告,正在使用织梦CMS系统的站长和企业,如果你尚未购买dedecms商业使用授权,那么将面临侵权赔款的风...

织梦dedecms在模板页面中实现会员登录退出状态显示

织梦dedecms在模板页面中实现会员登录退出状态显示很多会员朋友在制作带会员中心的模板文件时候,当我们点击登录后,织梦默认是跳转到会员中心的,但在我们返回网站主页时,发现header没有显示会员登录...