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

来源:互联网 发布:中融信托工作知乎 编辑:程序博客网 时间:2024/06/03 21:42
是这个样子的,我的在给一个比较老的网站需要增加文章水印的功能,本来我是想拷贝来的 用就成了, 但是总是有错误提示!因此,只能自己写了;一、定义了一个 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了!