23
2019
08

ThinkPHP5上传的图片打上文字水印的方法

经常在开发中遇到需要给上传的图片打水印的情况,这里参考案例:

先安装扩展

使用Composer安装ThinkPHP5的图像处理类库:

composer require topthink/think-image

装完后后端代码如下

public function upload_idcard_a(){

  $user=$this->chk_login();

  $user=Db::table('e_user')->where('uid',$user['uid'])->find();

  if($user['pass']==1){

   echo '{"status":0,"content":"已上传并审核通过无法修改"}';

  }

  $base64_string =  $_POST['base64_string'];

      $savename = uniqid().'.jpeg';//localResizeIMG压缩后的图片都是jpeg格式

      $savepath = 'idcard/'.$savename; 

      $url='/';

      $image = $this->base64_to_img( $base64_string, $savepath );

  $oss='/idcard/'.$savename;

  $image = hinkImage::open('.'.$oss);

      $image->text('仅授权XX科技公司使用','./static/font/msyh.ttf',40,'#CCCCCC', hinkImage::WATER_SOUTHEAST,0,40)->save('.'.$oss);

  Db::table('e_user')->where('uid="'.$user['uid'].'"')->update(['idcard_a' => $oss]); 

      if($oss){

  echo '{"status":1,"content":"上传成功","url":"'.$oss.'"}';

      }else{

          echo '{"status":0,"content":"上传失败"}';

      }

     }

原文链接:https://www.qiquanji.com/post/8916.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

gzh

微信扫码关注

更新实时通知

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。