一:安裝intervention/image拓展web
composer require intervention/image
二:上傳文件composer
\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'); } }
三:添加水印ui
1:添加文字水印code
添加文字水印主要使用到text方法對象
text方法參數說明圖片
x(可選)get
x定義第一個字符的基點。默認值:0it
y(可選)io
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/