Composer安装yii2-imagine 压缩,剪切,旋转,水印
yii2 2018-12-09 19:15:57

安装

1、执行composer安装

PHP Code复制内容到剪贴板
  1. composer require --prefer-dist yiisoft/yii2-imagine  

 

 

2.查看是否安装成功, 安装了两个目录分别是

vendor/imagine

vendor/yiisoft/yii2-imagine

 

使用

引入:

PHP Code复制内容到剪贴板
  1. use yii\imagine\Image;   
  2. // 实例化   
  3. $imagine = new Image();  

使用方法:

PHP Code复制内容到剪贴板
  1. //压缩  
  2. Image::thumbnail('@webroot/img/test-image.jpg', 120, 120)->save(Yii::getAlias('@webroot/img/thumb-test-image.jpg'), ['quality' => 100]);  
  3. echo Yii::getAlias('@webroot/img/thumb-test-image.jpg');  
  4.   
  5. //参数说明:  
  6. $filename 文件的路径  
  7. $width 缩略图的宽  
  8. $height 缩略图的高  
  9. $mode 模式(默认THUMBNAIL_OUTBOUN)  
  10.     \Imagine\Image\ManipulatorInterface::THUMBNAIL_OUTBOUN 裁剪模式  
  11.     \Imagine\Image\ManipulatorInterface::THUMBNAIL_INSET 填充模式  
  12.   
  13. //剪切  
  14. $result =  Image::crop('@webroot/img/test-image.jpg', 200, 200,[100,100])->save(Yii::getAlias('@webroot/img/thumb-test-crop.jpg'));  
  15.   
  16. //参数说明:  
  17. $filename 文件的路径  
  18. $width 裁剪的宽度  
  19. $height 裁剪的高度  
  20. $start 裁剪的x,y 点  
  21.   
  22. //旋转  
  23. Image::frame('@webroot/img/test-image.jpg', 5, '666', 0)->rotate(-8)->save(Yii::getAlias('@webroot/img/thumb-test-frame.jpg'), ['quality' => 100]);  
  24.   
  25. //水印  
  26. Image::watermark('@webroot/img/test-image.jpg''@webroot/img/watermark.jpg', [10,10])->save(Yii::getAlias('@webroot/img/thumb-test-watermark.jpg'), ['quality' => 100]);  
  27.   
  28. //参数说明:  
  29. $filename 文件的路径  
  30. $watermarkFilename 水印图片  
  31. $start 裁剪点(x,y)  
  32.   
  33. //文字水印  
  34. Image::text('@webroot/img/test-image.jpg''hello world''@webroot/img/symbol.ttf',[100,100],['color'=>'000000','size'=>50])->save(Yii::getAlias('@webroot/img/thumb-test-text.jpg'), ['quality' => 100]);  

各处理方法里的test-image.jpg为被处理的图片, thumb-test-text.jpg为处理后保存的图片,quality不用说了,是质量, 保存图片跟处理图片路径一样,比如水印,就是覆盖原图

水印位置也可以:

PHP Code复制内容到剪贴板
  1. $xPosition = 'left';  
  2. $yPosition = 'top';  
  3.   
  4. //->watermark('./watermark.png'), $xPosition, $yPosition)  

 

参考:https://www.yiichina.com/extension/1003 

 

 

 

本文来自于:http://www.yoyo88.cn/study/yii2/388.html

Powered by yoyo苏ICP备15045725号