1、首先从官网下载yii2-imagine的拓展

下载地址:https://github.com/yiisoft/yii2-imagine

下载包名称:yii2-imagine-master

2、然后再下载imagine的插件包

下载地址:https://github.com/avalanche123/Imagine/releases

下载完成之后请解压

修改文件夹名称yii2-imagine-master为yii2-imagine

把这两个文件夹放到你的yii项目的vendor\yiisoft目录里

之后修改该目录下的extensions.php文件;

在后面添加代码,目的是可以使用命名空间引入这个插件:

  'yiisoft/yii2-imagine' =>
array (
'name' => 'yiisoft/yii2-imagine',
'version' => '2.0.3.0',
'alias' =>
array (
'@yii/imagine' => $vendorDir . '/yiisoft/yii2-imagine',
),
),
'yiisoft/Imagine' =>
array (
'name' => 'yiisoft/Imagine',
'version' => '7.0.0.0',
'alias' =>
array (
'@Imagine' => $vendorDir . '/yiisoft/Imagine/lib/Imagine',
),
),

然后在修改vendor\composer目录下的autoload_psr4.php文件;

在后面添加代码:

'yii\\imagine\\' => array($vendorDir . '/yiisoft/yii2-imagine'),

到此,插件添加成功了,接下来是使用;

1.直接在控制器引入插件:

use yii\imagine\Image;

2使用方法:

//1.生成缩略图
Image::thumbnail($filename, $width,$height,\Imagine\Image\ManipulatorInterface::THUMBNAIL_INSET)->save($savefilename, ['quality' => 100]);//生成新图的质量
 
//参数说明:
$filename 源文件的路径
$savefilename 生成图片后的保存路径
$width 缩略图的宽
$height 缩略图的高 //默认是剪裁模式
\Imagine\Image\ManipulatorInterface::THUMBNAIL_OUTBOUN 裁剪模式
\Imagine\Image\ManipulatorInterface::THUMBNAIL_INSET 填充模式 //2.剪裁图片
Image::crop($filename, $width,$height,[0,0])->save($savefilename, ['quality' => 100]);//生成新图的质量
 
 
//参数说明:
$filename 源文件的路径
$savefilename 生成图片后的保存路径
$width 剪裁的宽
$height 剪裁的高
[0,0] 这个是剪裁的x,y点 //3.添加水印
Image::watermark($filename,$watermarkFilename,[0,0])->save($savefilename, ['quality' => 100]);//生成新图的质量
 
 
//参数说明:
$filename 源文件的路径
$watermarkFilename 水印图片
[0,0] 这个是添加水印的x,y点

yii2手动添加图片处理插件Imagine的更多相关文章

  1. yii2手动添加插件PHPExcel

    1.下载地址:https://github.com/PHPOffice/PHPExcel 2.解压并修改文件名为phpexcel 之后在yii项目的vendor目录下创建一个文件夹命名为phpoffi ...

  2. 改善用户体验之wordpress添加图片弹出层效果 (插件 FancyBox)

    下面说说在改善用户体验之wordpress添加图片弹出层效果.效果图如下:   像这篇文章如何在百度搜索结果中显示网站站点logo? 文章内有添加图片,没加插件之前用户点击图片时,是直接_black打 ...

  3. easyui+webuploader+ckeditor实现插件式多图片上传-添加图片权限(图片上传人是谁,只能看到自己的图片)

    需求: 实现过程及思路 1.先页面布局 <html xmlns="http://www.w3.org/1999/xhtml"> <head runat=" ...

  4. Discuz!图片查看插件(支持鼠标缩放、实际大小、旋转、下载)

    Discuz!图片查看插件(支持鼠标缩放.实际大小.旋转.下载) 图片查看是网站中的常用功能,用于展示详细的图片.在discuz图片插件的基础上进行了改造,因此这篇文章主要从以下几个方面来讨论图片查看 ...

  5. 十个jQuery图片画廊插件推荐

    jQuery的画廊插件可以将分组图像和多媒体资料转成类似Flash的图像或照片.当幻灯片已经成为网站的重要组成部分,jQuery的重要性不能被忽视.下面为你介绍了10个最有美感,创新性和创造性的jQu ...

  6. 介绍一款网站前台图片滚动插件之"switchable"

    一.简单介绍:jQuery.Switchable是一款整合了Tabs.Slide.Scrollable等常见UI组件的jQuery插件,在这里,简答说说他的Slide.像Tabs,在Jquery-UI ...

  7. 分享22款响应式的 jQuery 图片滑块插件

    响应式(Responsive)设计的目标是要让产品界面能够响应用户的行为,根据不同终端设备自动调整尺寸,带给用户良好的使用体验.这篇文章收集了22款优秀的响应式 jQuery 幻灯片插件,它们能够帮助 ...

  8. #添加图片,最多只能上传9张.md

    #添加图片,最多只能上传9张.md 前端页面: ```javascript <form id="imgForm" enctype="multipart/form-d ...

  9. wordpress图片水印插件DX-Watermark

    DX-Watermark是一款功能齐全的wordpress图片水印插件,可以自动给上传的图片添加文本或者图片水印. 后台截图: 文本水印: 图片水印: 选项说明: 类型:可选择文本或图片水印两种类型, ...

随机推荐

  1. Java基础知识陷阱(三)

    本文发表于本人博客. 之前都讲了有关字符串的陷阱,那今天来说下关于静态这个东西,这分为静态变量.静态方法,先看下面的代码请问结果输出是什么?: class Person01{ private stat ...

  2. JavaScript:学习笔记(8)——对象扩展运算符

    JavaScript:学习笔记(8)——扩展运算符 对象的扩展运算符 扩展运算符是三个点(...).用于取出参数对象的所有可遍历属性,然后拷贝到当前对象之中. 如上图所示,新建了一个对象a,然后通过扩 ...

  3. PHP双向队列,双端队列代码

    <?php /**  * User: jifei  * Date: 2013-07-30  * Time: 23:12 */ /**  * PHP实现双向队列,双端队列  * 双端队列(dequ ...

  4. HDU 4746 Mophues(莫比乌斯反演)

    题意:求\(1\leq i \leq N,1\leq j \leq M,gcd(i,j)\)的质因子个于等于p的对数. 分析:加上了对质因子个数的限制. 设\(f(d):[gcd(i,j)=d]\) ...

  5. LinQ高级查询、组合查询、IQueryable集合类型

    LinQ高级查询: 1.模糊查询(包含) Repeater1.DataSource = con.car.Where(r =>r.name.Contains(s)).ToList(); 2.开头 ...

  6. 解决日志unicode编码问题

    Xcode打印日志里如果有汉字,有时会以Unicode编码形式展示,另需工具转码,降低了开发的效率,未解决这一问题,简便的解决方法是 pod 'HYBUnicodeReadable' 这个第三方库很好 ...

  7. webpack打包静态资源和动态资源

    1.对于静态引用的资源: <img src = "static/modelname/imgname.png"> // 修改为下面的写法 <img src = &q ...

  8. grpc入门(三)

    grpc入门(三) 一.介绍 本文是关于grpc的第三篇博文,是对前两篇博文的具体代码实现,秉着个人一贯的风格,没有太多抒情和总结,直接就上代码. 文章代码参考:https://github.com/ ...

  9. Spring MVC 知识总结

    参考文章:http://www.oschina.net/question/84460_9608 孔浩视频 1. 几个关键类: RequestMappingHandlerMapping 和 Reques ...

  10. Linux中LVM2原理

    一.LVM原理 [MD]:Multi Device 多设备 Mdadm是一个用户空间工具,是RAID的管理工具,与真正的RAID工作没有太大关系.真正的RAID集成在linux内核中 [DM]Devi ...