Intervention 图像切割扩展
Intervention 更多操作记录
make,save函数
$source 可以是图片的本地路径,可以是图片的 URL 路径,可以是一个二进制图片数据,也可以是 PHP 的图像资源,列如在用 form 标签上传图片时, 获得的图片资源,返回一个 Intervention 的 Image 对象,save 函数可以保存对于图像的修改
make(mixed $source);
$img=Image::make('public/foo.jpg');
$img->save();
resize 函数
这个函数是用于调整图片宽高,是按照比例进行缩放
resize(int $width,int $height,[Closure $callback])
$img->resize(300,200);
//将图片大小调整为(300,200),会进行缩放,如果图片原本比例不为3:2,可能会出现边扁,或变高
$img->resize(300,null);
//只调整宽度
$img->resize(300,null,function($constraint){
$constraint->aspectRatio();
$constraint->upsize();
});
// 调整宽度为300 高度等比例缩放
widen,heighten
这两个函数是上面 resize() 等比例调整图片的快捷方式,只需传入宽度,或者高度,就可以等比例调整到你需要的宽高
widen($width,callback);
$img->widen(300);
$img->widen(300,function($constraint){
$constraint-upsize();
});
width(),height()
这两个函数分别用于获取图片的宽高,以数值的形式返回
$width=$img->width();
$height=$img->height();
crop函数
crop 函数以 $x,$y 为起点,切割 width,height 宽度的图片,如果忽略 $x,$y 那么就会以图片的中心为起点
crop(int $width,int $height,[int $x],[int $y]])
$img->crop(300.,200,0,0);
fit 函数
fit 函数是 crop 函数和 resize 函数的结合版,按照你传入的宽高,进行剪切和缩放,非常智能,position 属性为字符串,指定剪切的位置,默认为中心。可选参数有 top-left,top-right,bottom-left,bottom-right 等等,个人理解是先按照传入的比例剪切,后调整到你指定的大小
fit(int $width,[ int $height ], [Closure $callback], [String $position])
$img->fit(300,200);
//按照 3:2 比例,并调整到 300x200
$img-fit(200);
//1:1 比例,并调整到200
$img->fit(300,200,function($constraint){
$constraint->upsize();
});
//调整到 300x200,并防止图片放大
官方文档http://image.intervention.io
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: