Yii2第三方類庫外掛Imagine的安裝和使用

NO IMAGE

Imagine

Imagine 是一個物件導向的 PHP 類庫用於圖片操作。這個類庫能夠處理一些常用到的操作如:調整大小、裁剪、應用過濾器等。

其Color類庫可用於對任意對定的顏色生成RGB值。並且還提供一些方法來繪製圖形如:圓弧,橢圓,線,片等。

此外,還可以利用一個靈活的字型類來載入任意字型檔案,然後將文字插入到圖片中。

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]);

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援指令碼之家。

您可能感興趣的文章:

Yii安裝EClientScript外掛擴充套件實現css,js檔案程式碼壓縮合並載入功能Yii安裝與使用Excel擴充套件的方法詳解PHP的Yii框架中擴充套件的安裝與使用使用Composer安裝Yii框架的方法win7安裝php框架Yii的方法Yii學習總結之安裝配置Yii入門教程之Yii安裝及hello world從零開始學YII2框架(二)通過 Composer 安裝擴充套件外掛從零開始學YII2框架(一)通過Composer安裝Yii2框架yii2安裝詳細流程