zoukankan      html  css  js  c++  java
  • laravel 图片裁剪

    续接 之前的上传方法 http://www.cnblogs.com/muwu/p/9036041.html

    laravel裁剪需要用到image包

    composer require intervention/image

    php artisan vendor:publish --provider="InterventionImageImageServiceProviderLaravel5"

    再ImageUploadHandle中创建裁剪方法

    use Image

    public function resetingsize( $file_path , $max_width)

    {

      $image = Image::make($file_path);       //打开图片实例化

      $image->resize($max_width,null,function($constraint){       //接受两个参数,长和宽,此处接收最大长,高为null,创建匿名函数实现长款等比变大变小

        $constraint->aspeclRatio();     //按比例裁剪

        $constraint->upsize();    ///防止图片变大

      })

      $iamge->save();   //裁剪完了保存

    }

      再上面保存图片到路径中的save()方法中

      save($max_width = false)  增加参数,默认值为false,表示不裁剪

      把save里面的 $file->move() 方法更换:

      if($max_width && $ext != 'png')   //判断是否要求裁剪

      {

        $this->resetingsize( $file_path , $max_width);

      }

      

      其思路就是做了一个接口,如果要限制图片大小,就传递一个最大宽度的参数,这样子再save方法中就可以进行判断,有这个值就进行图片裁剪

      裁剪的思路是,通过路径找到图片,进行宽高等比例裁剪,然后去保存,

  • 相关阅读:
    使用ABP构建WebAPI的心得
    修改andriod模拟器的IMEI,IMSI,手机号,SIM卡号
    Abp框架下 Area中新建Layout报错的问题
    通过Roslyn构建自己的C#脚本 资料记录
    EF5 CodeFirst 修改主键自增属性
    Oracle字段类型及存储(一)
    ArcMap之等值面
    街景初看
    转:oracle中schema指什么
    OSGI起程一——确定目标
  • 原文地址:https://www.cnblogs.com/muwu/p/9036826.html
Copyright © 2011-2022 走看看