安装:composer require --prefer-dist yiisoft/yii2-imagine

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

vendor/imagine
vendor/yiisoft/yii2-
使用方法imagine

  

使用

引入

use yii\imagine\Image; 

实例化
$imagine = new Image();

  

使用方法

//压缩
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不用说了,是质量, 保存图片跟处理图片路径一样,比如水印,就是覆盖原图

Composer安装yii2-imagine 压缩,剪切,旋转,水印的更多相关文章

  1. composer 安装yii2 The package is not available in a stable-enough version解决办法

    错误 Potential causes: - A typo in the package name - The package is not available in a stable-enough ...

  2. composer安装yii2问题总结

    今天周六,在家安装yii2的advanced版本, 过程有些坎坷, 不过最后总算安装好了. 总结一下, 主要遇到下面两个问题: 1, 下载速度慢, 主要原因是网络问题 下载yii2时, 模板(除了ve ...

  3. [moka同学笔记]使用composer 安装yii2以及遇到的问题

    [一.Yii2安装过程] 使用composer安装,composer安装请参考其他博客 1.下载 Yii2 高级模板 跟普通模板一样 , 可以通过 Composer 和 github 下载 ,不过官方 ...

  4. win10使用Composer-Setup安装Composer以及使用Composer安装Yii2最新版

    1:下载 ca-bundle.crt和cacert.pem 将这两个文件放在php目录下 2:php.ini中添加上述两个文件的路径 curl.cainfo=C:/xampp/php/ca-bundl ...

  5. windows下面composer安装yii2

    1,安装composer "https://getcomposer.org/Composer-Setup.exe" 2,安装 composer-asset-plugin ,打开cm ...

  6. composer安装yii2

    这几天准备入门yii2,但是对于一个看php不到5天的小白来说,只能说路途艰辛,不过,总算是解决了,先放一张大图 感受一下成功的喜悦...(文章最后有惊喜哦) ok,下面就描述一下安装的步骤: 1.安 ...

  7. window下使用Composer安装yii2

    1.在 Windows 中,先下载并运行 Composer-Setup.exe,安装过程需选择php的运行目录,安装完后在windows的cmd下运行composer看看是否安装成功 2.安装完Com ...

  8. Windows下通过Composer安装Yii2

    安装好大于5.4或更高版本的PHP环境并开启openssl扩展.如果是Apache服务器,加载Apache的mod_ssl模块. 下载Composer并安装. 开始->运行[或者WIN+R]-& ...

  9. Windows下通过Composer安装Yii2 [ 2.0 版本 ]

    安装好大于5.4或更高版本的PHP环境并开启openssl扩展.如果是Apache服务器,加载Apache的mod_ssl模块. 下载Composer并安装. 开始->运行[或者WIN+R]-& ...

随机推荐

  1. PHP 之去除代码中的注释

    测试文件代码如下: <?php /** * Created by PhpStorm. * User: Yang * Date: 2019/10/16 * Time: 10:25 */ // 计算 ...

  2. 内部类访问局部变量时,为什么需要加final关键字

    是变量的作用域的问题,因为匿名内部类是出现在一个方法的内部的,如果它要访问这个方法的参数或者方法中定义的变量,则这些参数和变量必须被修饰为final.因为虽然匿名内部类在方法的内部,但实际编译的时候, ...

  3. webapi接口上传大文件

    通过WebApi或者MVC模式的接口上传文件时,总数报错 413 Request Entity Too Large IIS 404 服务未找到 解决方法: 1. 在web.config文件下找到sys ...

  4. OpenJudge计算概论-找出第k大的数

    /*================================================ 找出第k大的数 总时间限制: 1000ms 内存限制: 1000kB 描述 用户输入N和K,然后接 ...

  5. Discretized Streams: A Fault-Tolerant Model for Scalable Stream Processing

    https://www2.eecs.berkeley.edu/Pubs/TechRpts/2012/EECS-2012-259.pdf Discretized Streams: A Fault-Tol ...

  6. 【转】nodejs获取post请求发送的formData数据

    前端post请求发送formData的类型数据时,需要服务端引入中间件body-parser,主要原因是post请求发送的数据,是在http的body里面,所以需要进行解析,否则获取不到数据(数据为空 ...

  7. js求数组最大值方法

    定义数组 var arr = [-1, 1, 101, -52, 10, 1001, 1001] 1.es6拓展运算符... Math.max(...arr) 2.es5 apply(与方法1原理相同 ...

  8. word excel 未响应

    前几天笔记本突然出现word 一打开就未响应的情况,导致完全无法使用.今天发现 excel 也出现了这种情况.今天终于下定决心解决这个问题. 百度上搜索了很多,找到了很多解决方案.总结如下. 一.禁用 ...

  9. Facebook libra白皮书

    https://libra.org/en-US/white-paper/ An Introduction to Libra Libra的使命是建立一个简单的全球货币和金融基础设施,为数十亿人服务.该文 ...

  10. window.open()详解及浏览器兼容性问题示例探讨

    这篇文章主要介绍了window.open()的使用及浏览器兼容性问题方面的知识,感兴趣的朋友可以参考下   一.基本语法: window.open(pageURL,name,parameters) 其 ...