yii2-imagine的拓展和imagine插件是分开的 , yii2只提供了拓展 , 刚好用到yii2 , 搞了一天终于解决了 , 分享一下心得给大家,希望大家少走点弯路。
1、 首先从官网下载yii2-imagine的拓展
下载地址:https://github.com/yiisoft/yii2-imagine
下载包名称:yii2-imagine-master
2、 然后再下载imagine的插件包
下载地址:https://github.com/avalanche123/Imagine/releases
下载包名称:Imagine-0.5.0.zip
在阅读了yii2-imagine的代码后,我发觉v0.5.0的版本完全兼容。所以大家下载v0.5.0的版本就可以了
3、 在项目yii2的vendor\yiisoft\yii2目录下创建一个imagine目录
a) 解压yii2-imagine-master , 将BaseImage.php还有Image.php复制到imagine目录中
b) 解压Imagine-0.5.0.zip ,将Imagine-0.5.0\lib\Imagine目录 , 复制到imagine目录下
c) 将vendor\yiisoft\yii2\imagine下的所有页面,含有
namespace Imagine\
替换成
namespace yii\imagine\Imagine\
含有
use Imagine\
替换成
use yii\imagine\Imagine\
d) 修改vendor\yiisoft\yii2\imagine\BaseImage.php
89行:return new \Imagine\Gmagick\Imagine();
改成 return new Imagine\Gmagick\Imagine();
94行:return new \Imagine\Imagick\Imagine();
改成 return new Imagine\Imagick\Imagine();
99行:return new \Imagine\Gd\Imagine();
改成 return new Imagine\Gd\Imagine();
e) 修改vendor\yiisoft\yii2\imagine\Imagine\Image\Box.php
在头部追加
use yii\imagine\Imagine\Image\BoxInterface;
4、 大功告成,测试
<?php
use yii\imagine\Image;
//图片路径请根据自己的项目的位置调整
Image::frame('path/to/image.jpg', 5, '666', 0)
->rotate(-8)
->save('path/to/destination/image.jpg', ['quality' => 50]);
?>
版权声明:未经博主允许不得转载。http://www.smister.com/post-29.html
53Liu :
2016-02-17 15:52:22 回复
Mars :
2015-11-19 13:44:27 回复
发表评论