Composer安装yii2-imagine 压缩,剪切,旋转,水印
安装
1、执行composer安装
PHP Code复制内容到剪贴板
- composer require --prefer-dist yiisoft/yii2-imagine
2.查看是否安装成功, 安装了两个目录分别是
vendor/imagine
vendor/yiisoft/yii2-imagine
使用
引入:
PHP Code复制内容到剪贴板
- use yii\imagine\Image;
- // 实例化
- $imagine = new Image();
使用方法:
PHP Code复制内容到剪贴板
- //压缩
- Image::thumbnail('@webroot/img/test-image.jpg', 120, 120)->save(Yii::getAlias('@webroot/img/thumb-test-image.jpg'), ['quality' => 100]);
- echo Yii::getAlias('@webroot/img/thumb-test-image.jpg');
- //参数说明:
- $filename 文件的路径
- $width 缩略图的宽
- $height 缩略图的高
- $mode 模式(默认THUMBNAIL_OUTBOUN)
- \Imagine\Image\ManipulatorInterface::THUMBNAIL_OUTBOUN 裁剪模式
- \Imagine\Image\ManipulatorInterface::THUMBNAIL_INSET 填充模式
- //剪切
- $result = Image::crop('@webroot/img/test-image.jpg', 200, 200,[100,100])->save(Yii::getAlias('@webroot/img/thumb-test-crop.jpg'));
- //参数说明:
- $filename 文件的路径
- $width 裁剪的宽度
- $height 裁剪的高度
- $start 裁剪的x,y 点
- //旋转
- Image::frame('@webroot/img/test-image.jpg', 5, '666', 0)->rotate(-8)->save(Yii::getAlias('@webroot/img/thumb-test-frame.jpg'), ['quality' => 100]);
- //水印
- Image::watermark('@webroot/img/test-image.jpg', '@webroot/img/watermark.jpg', [10,10])->save(Yii::getAlias('@webroot/img/thumb-test-watermark.jpg'), ['quality' => 100]);
- //参数说明:
- $filename 文件的路径
- $watermarkFilename 水印图片
- $start 裁剪点(x,y)
- //文字水印
- 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复制内容到剪贴板
- $xPosition = 'left';
- $yPosition = 'top';
- //->watermark('./watermark.png'), $xPosition, $yPosition)
参考:https://www.yiichina.com/extension/1003
暂无评论