WordPress添加水印插件Watermark Reloaded改进

WordPress插件Watermark Reloaded可以为上传的图片添加文字水印,但不支持中文,对于只需要在图片上添加网址水印的简单需求来说非常适合。

Watermark Reloaded插件支持针对不同裁剪版本的图片添加水印,例如可以限制只为large版本的图片添加水印。可以设置水印的坐标,也可以设置文字颜色。

在图片比较小的情况下,或许我们并不希望再添加水印遮挡图片内容,因此我简单修改了一下Watermark Reloaded插件,实现设置图片尺寸功能,只有在宽和高都大于设置参数的情况下,才为该图片添加水印。

修改watermark-reloaded.php文件中以下代码:

$_options属性变更如下:

protected $_options = array(\'watermark_installed\'  => 0,\'watermark_donated\' => 0,\'watermark_hide_nag\'  => 0,\'watermark_hide_pro_nag\' => 0,\'watermark_on\' => array(),\'watermark_position\' => \'bottom_right\',\'watermark_offset\' => array(\'x\' => 5,\'y\' => 5),\'watermark_size\' => array(\'w\' => 200,\'h\' => 100),\'watermark_text\' => array(\'value\' => null,\'font\' => \'Arial.ttf\',\'size\' => 20,\'color\' => \'000000\'));

doWatermark方法变更如下:

public function doWatermark($filepath) {// get image mime type$mime_type = wp_check_filetype($filepath);$mime_type = $mime_type[\'type\'];// get watermark settings$options = $this->get_options();// get image resource$image = $this->getImageResource($filepath, $mime_type);// add text watermark to image$size = $this->getImageSize($image);if($size[\'x\'] > $options[\'watermark_size\'][\'w\'] && $size[\'y\'] > $options[\'watermark_size\'][\'h\']) {$this->imageAddText($image, $options);// save watermarked imagereturn $this->saveImageFile($image, $mime_type, $filepath);

在插件设置表单Watermark offset这个表格行的后面添加:

<tr valign=\"top\"><th scope=\"row\">图片尺寸</th><td><fieldset><legend ><span>Watermark size</span></legend><?php $watermark_size = $this->get_option(\'watermark_size\'); ?><?php foreach(array(\'w\', \'h\') as $size) : ?><?php echo $size; ?>: <input  name=\"watermark_size[<?php echo $size; ?>]\" type=\"text\" value=\"<?php echo $watermark_size[$size]; ?>\" size=\"5\" />px<br /><?php endforeach; ?><span >大于该尺寸的图片才添加水印.</span></fieldset></td></tr>

给TA打赏
共{{data.count}}人
人已打赏
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索