php实现ckeditor编辑器添加水印及使用误区

是这个样子的,我的在给一个比较老的网站需要增加文章水印的功能,本来我是想拷贝来的 用就成了, 但是总是有错误提示!

因此,只能自己写了;

一、定义了一个 setwater.php的文件

```


function setwater($src,$water){
        //$src 为需要添加图片的源途径;$water为水印图片路径;
        //测试后,路径可采取相对路径进行访问;对此网站我们需要去掉 uploadfiles前的/

        $src_path = substr($src, 1);
        $water_path = $water;

        //获取图片的类型及宽/高
        list($src_w,$src_h,$src_type) = getimagesize($src_path);
        list($water_w,$water_h) = getimagesize($water_path);
        //pos 为水印放置的位置;右下角
        $posX = $src_w - $water_w;
        $posY = $src_h-$water_h;//假设它是符合坐标系y原则,

        //关于 水印宽度高度设置;我们采取不设置,那么水印的大小就是原始大小;

        if($src_w>400 && $src_h>200){
            //1 = GIF,2 = JPG,3 = PNG,4 = SWF
            $water_source = imagecreatefrompng($water_path);
            switch ($src_type) {
                case 1:
                    $src_source = imagecreatefromgif($src_path);
                    imagecopy($src_source, $water_source, $posX, $posY, 0, 0, $src_w, $src_h);
                    imagegif($src_source,$src_path);
                    break;
                case 2:
                    $src_source = imagecreatefromjpeg($src_path);
                    imagecopy($src_source, $water_source, $posX, $posY, 0, 0, $src_w, $src_h);
                    imagejpeg($src_source,$src_path);
                    break;
                case 3:
                    $src_source = imagecreatefrompng($src_path);
                    imagecopy($src_source, $water_source, $posX, $posY, 0, 0, $src_w, $src_h);
                    imagepng($src_source,$src_path);
                    break;
                default:
                    break;
            }
            $src = "/".$src_path;
            return $src;

        }else{
            //小图片不加水印
            return $src;
        }
        
        imagedestroy($src_source);
        imagedestroy($water_source);

    }
```
在编辑器图片板块的文件中设置调用:

```
//添加水印开始

    $filename = $config['site_url'].$file_abso;
    $wate = syurl;
    setwater($filename,$wate);

//添加水印结束
```

这个方法呢只传入两个参数,是图片的源路径,

关于路径,就是类似 很多网站自己定义的/upfileloads/…….......jpg,是读取不到图片的,可以使用网站的绝对路径或者相对路径才能进行访问!

第二个,网站有个随机命名图片名称的方式,但是在我设置图片增加水印的方法后,提示

it is,总之就是时区不对 的意思,在php.ini增加,时区为重庆,才ok了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值