• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    织梦CMS二次开发缩略图变形的解决方法
    POST TIME:2021-05-23 00:38

    下面给大家介绍织梦CMS加水印图片会变形的解决方法,修改代码前先备份源码,以免出错

    第一:修改一个处理图片的函数位置:/include/image.func.php
    查找到:

    if($srcW<=$toW&& $srcH<=$toH) returntrue;

    大概在71行左右在下面加上

    if($srcW>$srcH){
    $toWH=$toH/$toW;
    $srcWH=$srcH/$srcW;
    }
    if(!$srcW>$srcH){
    $toWH=$toW/$toH;
    $srcWH=$srcW/$srcH;
    }
     

    意思不多说了,会php的朋友一看就明白,
    这个方法修改后的功能是可以按照图片的width和height的比例去缩放,如果这个图片的宽大于高就按已设定好的高来缩放图片,
    如果不大于,可以按已设定好的宽来缩放,我的网站上是正方形的,所以是这样设置的也可以根据你网站图片的大小来改这个判断

    if(!$srcW>$srcH)//这个是如果宽不大于高按已设定的宽来缩放图片if($srcW>$srcH)//这个是如果宽大于高按已设定的高来缩放图片  

    注释:说明一点这个自已可以根据需要去改,这个是判断的图片是发文章,文章内容的第一个图片的高和款,设定好的高和宽是在后台的系统设置里改我的网站是正方形的,最大的是102*102的,我设的是102*102

    第二步:要修改的是网站的模板,也就是css的样式,还是以我网站上的为例

    <div>
    <a alt=”从早到晚巧妙的瘦身” href=”/a/mr/jianfeimeiti/jianfeimiji/2011/0124/36.html”>
    <img border=”0″ alt=”从早到晚巧妙的瘦身” src=”/uploads/allimg/110124/2201462126-0-lp.jpg”>
    </a>
    </div>
    <style>
    .img_top2 {border: 1px solid #CCCCCC;height: 102px;overflow: hidden;padding: 3px;width: 102px;</style>

    第三要修改的是标签源码 arclist.lib.php
    找到:

    $row['image'] = “<img src=’”.$row['picname'].”‘ border=’0′ width=’$imgwidth’ height=’$imgheight’ alt=’”.ereg_replace(“['><]“,”",$row['title']).”‘>”;

    这一行主要是说,如果你在标签里调用不设定图片的高和宽这个就成默认的width=”120px” height=”120px”

    在这一行下增加一个

    $row['image2'] = “<img src=’”.$row['picname'].”‘ border=’0′ alt=’”.ereg_replace(“['><]“,”",$row['title']).”‘>”;
    $row['imglink2'] = “<a href=’”.$row['filename'].”‘alt=’”.$row['title'].”‘>”.$row['image2'].”</a>”;

    调用时写

    {dede:arclist type=image. }
    [field:imglink2/]
    {/dede:arclist}
     

    就是把默认的高和宽去了,出来的是原始的高和宽
    这样已经完成了,主要是给大家分享一个方法,最好修改时备份一份。
    css部分不是太好修改主,主要是overflow: hidden;这个让多出设定好的不显示,这样水印就不显示了。
    大家可以到我的网站上看看效果,主要是掌握方法

    
    关于我们 | 付款方式 | 建站知识 | 增值服务 | 网站模板
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!