thinkphp6如何添加图片水印

一,如果你没有think-image,那你得先composer一下

composer require topthink/think-view

在命令行,找到你的项目地址,输入上面的命令,这里别进入public文件里输入,否则报错


成功后会在vendor的topthink下面有该配置文件,如下图:



二、新建个添加水印的方法

/**
     * @param $path  需要打开的图片路径:如:/storage/image/20200415/f4360ed9335d9ff8957d75ceb6519adb.jpg
     * @return string
     *@介绍:添加水印
     * @author  huangpeng
     * @Time 2020/5/11 12:28
     */
   public function  addPicWater($path){
        $dirName=date('Ymd',time());
       if(!file_exists(ROOT_PATH() . 'public/storage/image/'. $dirName))
       {
           mkdir(ROOT_PATH() . 'public/storage/image/'.$dirName,0755,TRUE);
       }

        $savePath=ROOT_PATH()."public/storage/image/".$dirName.'/';
        $picNmae=time().'.png';
       //添加水印
       $image = \think\Image::open(ROOT_PATH()."public".$path);
// 给原图左上角添加水印并保存water_image.png
       $image->text('37℃5技术社区https://www.alvinxiao.com',ROOT_PATH()."public".'/STCAIYUN.TTF',20,'#ffffff',5)
           ->save($savePath.$picNmae);
       if(file_exists(ROOT_PATH() . 'public/'.$path)){
           @unlink(ROOT_PATH() . 'public/'.$path);
       }
       return '/storage/image/'.$dirName.'/'.$picNmae;
}

然后就可以获取添加水印后的图片了。

如果想了解更多tp框架设置水印的方法,请访问这里https://www.kancloud.cn/manual/thinkphp5_1/354123

本文由37°5【https://www.alvinxiao.com https://blog.alvinxiao.com原创,转载请注明来源。请注意原创和打造和谐的网络环境,谢谢!


分享到: