当前位置: 首页 > 后端技术 > PHP

Yii使用intervention-imageextension实现图片处理

时间:2023-03-29 21:00:42 PHP

1:安装intervention/imageextensioncomposerrequireintervention/image2:上传文件\Intervention\Image\ImageManagerStatic::make($_FILES['file']['tmp_name'])->save('upload.jpg');//file为上传表单名称\Intervention\Image\ImageManagerStatic::make($_FILES['file']['tmp_name'])->resize(300,200)->save('upload.jpg');//file为上传表单名称,将上传的图片压缩成300,200实现单图上传和多图同时上传if($_FILES['file']){$image=$_FILES['file']['tmp_name'];if(is_array($image)){//多图上传foreach($imageas$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定义第一个字符的基点。默认值:0y(可选)y定义第一个字符的基点。默认值:0callback(可选)关闭字体对象的回调,回调可以配置:(1)file:配置水印字体(2)size:配置水印大小(3)color:配置水印颜色(4)align:配置水印水平对齐方式(5)valign:配置为垂直对齐方式(6)angle:配置水印旋转角度示例://watermarkImageManagerStatic::make('upload.jpg')->text('水印文字',20,30,function($font){//配置水印字体$font->file(\Yii::getAlias('@webroot').'/simsun.ttc');//配置水印大小$font->size(30);//配置水印颜色$font->color('#fff');//配置水印水平左对齐(左、右、中)$font->align('left');//配置水印垂直对齐底部(top,bottom,middle)$font->valign('bottom');//配置水印旋转角度$font->angle(45);})->保存('uploadWater.jpg');2:添加图片水印添加图片水印主要使用insert方法。插入方法参数说明:source:水印图片地址position:设置插入图片的位置,参数可配置项有:(1)top-left(默认)(2)top(3)top-right(4)left(5)center(6)right(7)bottom-left(8)bottom(9)bottom-rightx:水平偏移,默认0y:垂直偏移,默认0例子:ImageManagerStatic::make('upload.jpg')->插入('water.jpg','bottom-left',10,10)->save('uploadWater.jpg');下面是一些基本的介入/图像扩展操作,具体可以参考:http://image.intervention.io/