首页 > CMS > 织梦DEDE > 正文

织梦模板小白讲堂三十一:织梦dedecms中png水印不透明怎么办

2024-07-12 08:49:21
字体:
来源:转载
供稿:网友
这篇文章主要为大家详细介绍了织梦模板小白讲堂三十一:织梦dedecms中png水印不透明怎么办,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。

      织梦后台图片水印使用png的时候不少朋友发现水印不透明,出现这个问题要怎么解决呢?下面织梦模板网小编给大家介绍一个处理方法。

织梦dedecms中png水印不透明解决办法

在 include/inc_photograph.php 找到 ImgWaterMark 函数

//读取水印图片    if(!emptyempty($w_img) && file_exists($w_img)){     $ifWaterImage = 1;     $info = '';     $water_info = getimagesize($w_img,$info);     $width      = $water_info[0];     $height     = $water_info[1];     switch($water_info[2]){           case 1 :       if(!function_exists("imagecreatefromgif")) return;       $water_img = imagecreatefromgif($w_img);       break;           case 2 :       if(!function_exists("imagecreatefromjpeg")) return;       $water_img = imagecreatefromjpeg($w_img);       break;           case 3 :       if(!function_exists("imagecreatefrompng")) return;       $water_img = imagecreatefrompng($w_img);       break;           case 6 :       if(!function_exists("imagecreatefromwbmp")) return;       $srcFile_img = imagecreatefromwbmp($w_img);           break;           default :       return;     }

找到 

$water_img = imagecreatefrompng($w_img);

将这行修改为:

if(!function_exists("imagecreatefrompng")) return;    //经过修改的加水印代码        $water_im_bak = imagecreatefrompng($w_img);        $water_img = imagecreatetruecolor($width,$height);          imagealphablending($water_img,false);        imageSaveAlpha($water_img,true);        $white = ImageColorAllocate($water_img, 255,255,255);        ImageColorTransparent($water_img,$white);          imagecopyresampled($water_img,$water_im_bak,0,0,0,0,$width,$height,$width,$height);       //$water_img = imagecreatefrompng($w_img);

到这里就可以解决png水印不能透明显示的问题,有兴趣的朋友就可以动手尝试看看。

以上就是织梦模板小白讲堂三十一:织梦dedecms中png水印不透明怎么办的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持武林网。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表