• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Yii 使用intervention/image拓展实现图像处理功能

    一:安装intervention/image拓展

    composer require intervention/image

    二:上传文件

    \Intervention\Image\ImageManagerStatic::make($_FILES['file']['tmp_name'])->save('upload.jpg');//file为上传表单的name名
    \Intervention\Image\ImageManagerStatic::make($_FILES['file']['tmp_name'])->resize(300, 200)->save('upload.jpg');//file为上传表单的name名,并将上传的图片压缩成300,200
    

    同时实现单图上传和多图上传

    if ($_FILES['file']) {
      $image = $_FILES['file']['tmp_name'];
      if (is_array($image)) {
        //多图上传
        foreach ($image as $key => $item) {
          \Intervention\Image\ImageManagerStatic::make($item)->save($key.'upload.jpg');
        }
      } else {
        //单图上传
        \Intervention\Image\ImageManagerStatic::make($image)->save('upload.jpg');
      }
    }

    三:添加水印

    1:添加文字水印

    添加文字水印主要使用到text方法

    text方法参数说明

    x(可选)

    x定义第一个字符的基点。默认值:0

    y(可选)

    y定义第一个字符的基点。默认值:0

    callback(可选)

    关闭字体对象的回调,回调可配置:

    (1)file:配置水印字体
    (2)size:配置水印大小
    (3)color:配置水印颜色
    (4)align:配置水印水平对齐方式
    (5)valign:配置是垂直对齐方式
    (6)angle:配置水印旋转角度
    例:

    //水印
    ImageManagerStatic::make('upload.jpg')->text('水印文字',20,30,function($font){
      //配置水印字体
      $font->file(\Yii::getAlias('@webroot') . '/simsun.ttc');
      //配置水印大小
      $font->size(30);
      //配置水印颜色
      $font->color('#fff');
      //配置水印水平居左( left, right and center)
      $font->align('left');
      //配置水印垂直居下(top, bottom and middle)
      $font->valign('bottom');
      //配置水印旋转角度
      $font->angle(45);
    })->save('uploadWater.jpg');

    2:添加图片水印

    添加图片水印主要使用到insert方法

    insert方法参数说明:

    source:水印图片地址

    position:设置插入图像的位置,参数可配置项为:

    (1)top-left (default)
    (2)top
    (3)top-right
    (4)left
    (5)center
    (6)right
    (7)bottom-left
    (8)bottom
    (9)bottom-right

    x:水平偏移量,默认0

    y:垂直偏移量,默认0

    例:

    ImageManagerStatic::make('upload.jpg')->insert('water.jpg','bottom-left',10,10)->save('uploadWater.jpg');

    这里是intervention/image拓展的一些基本操作,详细可以参考: http://image.intervention.io/

    总结

    以上所述是小编给大家介绍的Yii 使用intervention/image拓展实现图像处理功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

    您可能感兴趣的文章:
    • PHP Laravel 上传图片、文件等类封装
    • Laravel中前端js上传图片到七牛云的示例代码
    • Laravel+Layer实现图片上传功能(整理篇)
    • vuejs+element-ui+laravel5.4上传文件的示例代码
    • 利用laravel+ajax实现文件上传功能方法示例
    • 三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
    • Laravel框架+Blob实现的多图上传功能示例
    • Laravel框架文件上传功能实现方法示例
    • Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
    • Laravel+Intervention实现上传图片功能示例
    上一篇:PHP实现给定一列字符,生成指定长度的所有可能组合示例
    下一篇:微信公众号之主动给用户发送消息功能
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Yii 使用intervention/image拓展实现图像处理功能 Yii,使用,intervention,image,