在dedecms整合百度编辑器(Ueditor)时,上传图片加水印的办法主要涉及对几个关键文件的修改,以下将详细介绍这些步骤,并给出相关代码示例和表格说明:
一、修改ueditor目录下的config.json配置文件
1、打开ueditor目录下的php目录下的config.json配置文件:找到"iswatermark": false, /*图片加水印,默认不加水印*/,将其改为"iswatermark": true,以启用水印功能。
二、修改ueditor下的action_upload.php文件
1、打开ueditor下的php文件夹里的action_upload.php文件:
步骤 | 代码位置 | 修改内容 |
1 | case ‘uploadimage’: | 在break;之前加入判断session是否设置水印的代码 |
2 | 生成上传实例对象并完成上传 | 修改为$up = new Uploader($fieldName, $config, $base64,$watermark); |
三、修改Uploader.class.php文件
1、打开ueditor下的php文件夹里的Uploader.class.php文件:
步骤 | 代码位置 | 修改内容 |
1 | 构造函数__construct上面 | 添加private $water; //是否添加水印(属性) |
2 | 构造函数__construct | 修改构造函数参数,添加$watermark = false |
3 | 构造函数里面 | 加入$this>water = $watermark; |
4 | upFile方法里 | 在移动文件成功后,this>water为true,则调用$this>watermark()方法添加水印 |
5 | 类文件里 | 添加watermark()方法,实现图片添加水印的功能 |
四、getRemoteImage.php文件修改
1、打开getRemoteImage.php文件:
步骤 | 代码位置 | 修改内容 |
1 | //远程抓取图片配置 | 在上面添加require_once(‘../../../dede/config.php’);和require_once(DEDEADMIN.”/inc/inc_archives_functions.php”); |
2 | fwrite( $fp2 , $img ); | 在其下面添加@WaterImg($tmpName, ‘down’); |
3 | getRemoteImage | 替换所有的getRemoteImage为getRemoteImageUe |
imageUp.php文件修改
1、打开imageUp.php文件:
步骤 | 代码位置 | 修改内容 |
1 | include “Uploader.class.php”; | 在上面添加require_once(‘../../../dede/config.php’);和require_once(DEDEADMIN.”/inc/inc_archives_functions.php”); |
2 | echo “{‘url’:’ | 在其上面添加@WaterImg($info[ “url” ], ‘down’); |
通过以上步骤,可以实现在dedecms整合百度编辑器(Ueditor)后,上传图片自动添加水印的功能,需要注意的是,这些修改可能会涉及到网站的安全性和性能,因此在实际操作中需要谨慎处理。
FAQs
1、Q: dedecms整合百度编辑器(Ueditor)后,上传图片没有自动加水印怎么办?
A: 可以通过修改ueditor目录下的config.json配置文件,启用图片加水印功能,然后按照上述步骤修改action_upload.php和Uploader.class.php文件,实现上传图片自动添加水印。
2、Q: dedecms整合百度编辑器(Ueditor)后,如何给抓取的远程图片添加水印?
A: 可以修改getRemoteImage.php文件,引入dede的文档处理函数,然后在fwrite( $fp2 , $img )下面添加@WaterImg($tmpName, ‘down’),最后替换所有的getRemoteImage为getRemoteImageUe。
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。