记录一下使用Intervention\Image压缩图片
安装扩展
composer require intervention/image
确保php安装了GD库或者 Imagick才可以使用,默认使用Gd库
使用
use Intervention\Image\Facades\Image;
//打开图片文件()
$img = Image::make('public/foo.jpg')
//按宽300,等比缩放图片
$content = $img->resize(300, null, function ($constraint) {
$constraint->aspectRatio();
})->stream();
方法使用
- make(资源) :支持二进制流、文件流、base64文件流、文件绝对路径、Gd库文件资源、Imagick文件资源等。具体可看下面代码
- resize(宽,高,闭包):重置大小。宽高两个参数为整数,闭包支持下列两方法:
function ($constraint) {
$constraint->aspectRatio();//保持图片的纵横比例,宽高只上送一个时,该方法可以保持比例不失调
$constraint->upsize();//防止图片放大
}
具体可参考文档(resize)
- stream():转为文件流