首頁 >後端開發 >php教程 >Yii2外掛Imagine的安裝與使用方法

Yii2外掛Imagine的安裝與使用方法

小云云
小云云原創
2018-02-08 14:12:052178瀏覽

Imagine 是一個物件導向的 PHP 類別庫用於圖片操作。這個類別庫能夠處理一些常用來的操作如:調整大小、裁剪、套用過濾器等。其Color類別庫可用於對任意對定的顏色產生RGB值。並且還提供一些方法來繪製圖形如:圓弧,橢圓,線,片等。此外,還可以利用一個靈活的字體類別來載入任意字體文件,然後將文字插入圖片中。 Imagine 是一個會經常更新的類別庫,將來還會實現:圖表生成、圓角過濾器等功能。本文主要和大家介紹Yii2第三方類庫插件Imagine的安裝和使用,具有一定的參考價值,有興趣的小夥伴們可以參考一下,希望能幫助大家。

Yii2 安裝 Imagine

Imagine 的手動下載和安裝這裡就不做介紹了,可自行百度。這裡介紹 Yii2 的 Composer 方式來安裝 Imageine。

方法一


php composer.phar require --prefer-dist yiisoft/yii2-imagine

方法二

在專案composer.json 檔案內的require 欄位裡加入如下程式碼:


"yiisoft/yii2-imagine": "~2.1.0"

然後再項目根目錄下執行指令(cmd):


composer require yiisoft/yii2-imagine

Yii2 使用Imagine


use yii\imagine\Image;

$srcImg = Yii::getAlias('@webroot/test.jpg');
$aimImg = Yii::getAlias('@webroot/testdeal.jpg');
$srcTTF = Yii::getAlias('@webroot/img/symbol.ttf');

// 缩略
// 参数 inset 表示定框缩略
// 图片完整缩略在 200x100 的框内
// 备注:定框的宽度或高度必须有一个小于图片的实际尺寸,否则直接返回源图尺寸
Image::thumbnail($srcImg, 200, 100, 'inset')->save($aimImg, ['quality'=>100]);

// 缩略
// 参数 outbound 表示单尺寸优先缩略并居中截取
// 该参数为函数的默认值,它会为您尽可能多的截取图片但又不会超出图片范围
// 例:源图 500x200,那么按照高度 100 缩略(变为250x100),然后再居中截取 200x100
// 例:源图 400x350,那么按照宽度 200 缩率(变为200x175),然后再居中截取 200x100
// 例:源图 100x80,那么不缩率不截取,直接返回源图 100x80
Image::thumbnail($srcImg, 200, 100, 'outbound')->save($aimImg, ['quality'=>100]);

// 缩略
// 按宽度 200 缩略,高度自适应
Image::thumbnail($srcImg, 200, null)->save($aimImg, ['quality'=>100]);

// 缩略
// 按高度 100 缩略,宽度自适应
Image::thumbnail($srcImg, null, 100)->save($aimImg, ['quality'=>100]);

// 剪切
// 参数:源图、宽度、高度、起始点
// 将源文件 $srcImg 保存到 $aimImg
Image::crop($srcImg, 400, 200, [100,100])->save($aimImg);

// 旋转
// 未研究
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]);

// 文字水印
// 参数:源图、文字、字体、起始点、字体配置
Image::text($srcImg, 'hello world', $srcTTF, [100,100] ,['color'=>'000000','size'=>50])->save($aimImg, ['quality'=>100]);

以上是Yii2外掛Imagine的安裝與使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn