如何解决dedecms缩略图无水印以及不失真

一天,当你走过蔓草荒烟,我便在那里向你轻声呼喊,以风声,以水响。斩断自己的退路,才能更好地赢得出路。

当我们在设置缩略图的时候,那么等显示的时候出现了无水印的情况,直接是不显示,或者是图片时间变形了,其实这个也只是一个小小的bug,算不上是什么大事,但是我们想要的是等比例的缩放,而且图片大的时候水印还显示不出来,所以这个就是缩略图没有水印的原因了,那么这个问题,也只能靠修改代码解决,还好的是有大神已经解决了这个问题,所以我们只需要引用他的办法即可,看看他是怎么解决的呢?1、第一我们需要处理一下处理图片的代码,位置是在/include/image.func.php,然后找到一下代码:

if($srcW<=$toW&&$srcH<=$toH)returntrue;
在其后面加入:
if($srcW>$srcH){
$toWH=$toH/$toW;
$srcWH=$srcH/$srcW;
}
if(!$srcW>$srcH){
$toWH=$toW/$toH;
$srcWH=$srcW/$srcH;
}
想想php程序大神们都能知道这段代码的意思了吧,这个的意思就是让其按照图片的width和height的比例去缩放,如果高于了这个,那么就按照设置的默认来的。这个的设置根据自己的需求去修改就行了。最大的就是102*102,,所以在这个范围内绝对的是没有问题的。 2、修改css样式,具体的这个是在哪里,这个就要看您的这个是在哪里控制了哈,这个是没有确实的位置的,那么小编这里只是讲解一下即可,方法都是一样的:
.img_top2 {border: 1px solid #CCCCCC;height: 95px;overflow: hidden;padding: 3px;width: 95px;
小编这里只设置为95*95因为网站的需求,不能用到最大的,不然就整体不好看了。 3、修改标签源码:arclist.lib.php,找到如下代码:
$row['image'] = “<img src=’”.$row['picname'].”‘ border=’0′ width=’$imgwidth’ height=’$imgheight’ alt=’”.ereg_replace(“['><]“,”",$row['title']).”‘>”;
在其后面加入一下代码:
$row['image2'] = “<img src=’”.$row['picname'].”‘ border=’0′ alt=’”.ereg_replace(“['><]“,”",$row['title']).”‘>”;
$row['imglink2'] = “<a rel="nofollow noopener noreferrer" href=’”.$row['filename'].”‘alt=’”.$row['title'].”‘>”.$row['image2'].”</a>”;
加入的这个时候的意思是,如果不设置的情况下默认的就是102*102. 然后dedecms调用标签的时候就需要如下调用了:
{dede:arclist type=image. }
[field:imglink2/]
{/dede:arclist}
好了就这样我们就完美的解决了这个问题了,操作前一定要备份一下您的程序哈,方法是这样的但是要灵活的运用哈。

以上就是如何解决dedecms缩略图无水印以及不失真。要纠正别人之前,先反省自己有没有出错。更多关于如何解决dedecms缩略图无水印以及不失真请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
织梦后台文档列表添加复制文档功能支持所有模型

织梦无法上传ico图标格式文件的如何解决方法

dedecms如何实现任意页面调用当前会员信息的方

织梦dede:tag调用指定多个栏目的TAG标签

织梦栏目列表按附加表自定义字段排序