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

2022-09-28 20:30:23 字數 2348 閱讀 8539

imagine

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

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

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

imagine 是乙個會經常更新的類庫,將來還會實現:圖表生成、圓角過濾器等功能。

yii2 安裝 imagine

imagine 的手動**和安裝這裡就不做介紹了,可自行百度。這裡介紹 yii2 的 composer 方式來安裝 imageine。

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

方法二在專案 compos 檔案內的 require 欄位裡新增如下**:

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

然後再專案根目錄下執行命令(cmd):

composer require yiisoft/yii2-imagine

yii2 使用 imagine

// 縮略

// 引數 inset 表示定框縮略

// 完整縮略在 200x100 的框內

// 備註:定框的寬度或高度必須有乙個小於的實際尺寸,否則直接返回源圖尺寸

image::thumbnail($srcimg, 200, 100, 'inset')->s**e($aimimg, ['quality'=>100]);

// 縮略

// 引數 outbound 表示單尺寸優先縮略並居中擷取

// 該引數為函式的預設值,它會為您盡可能多的擷取但又不會超出範圍

// 例:源圖 500x200,那麼按照高度 100 縮略(變為250x100),然後再居igilftoz中擷取 200x100

// 例:源圖 400x350,那麼按照寬度 200 縮率(變為200x175),然後再居中擷取 200x100

// 例:源圖 100x80,那麼不縮率不擷取,直接返回源圖 100x80

image::thumbnail($srcimg, 200, 100, 'outbound')->s**e($aimimg, ['quality'=>100]);

// 縮略

// 按寬度 200 縮略,高度自適應

image::thumbnail($srcimg, 200, null)->s**e($aimimg, ['quality'=>100]);

// 縮略

// 按高度 100 縮略,寬度自適應

image::thumbnail($srcimg, null, 100)->s**e($aimimg, ['quality'=>100]);

// 剪下

// 引數:源圖、寬度、高度、起始點

// 將原始檔 $srcimg 儲存到 $aimimg

image::crop($srcimg, 400, 200, [100,100])->s**e($aimimg);

// 旋轉

www.cppcns.com// 未研究

// 水印

// 未研究

// 文字水印

// 引數:源圖、文字、字型、起始點、字型配置

image::text($srcimg, 'hello world', $srcttf, [100,100] ,['color'=>'000000','size'=>50])->s**e($aimimg, ['quality'=>100]);

本文標題: yii2第三方類庫外掛程式imagine的安裝和使用

本文位址:

Flask 第三方外掛程式

因為flask自帶的session是將session存在cookie中 所以才有了第三方flask session外掛程式,可以將session儲存在我們想儲存的資料庫中 redis等 pip install flask session注意redis資料庫一定是在內網中的且是一台單獨的伺服器,防止被...

YII如何呼叫第三方PHP類

首先要了解root alias 為方便起見,yii 預定義了以下幾個根別名 system 表示 yii 框架目錄 zii 表示 zii 庫 目錄 webroot 表示 入口指令碼 檔案所在的目錄。此別名從版本 1.0.3 開始有效。ext 表示包含了所有第三方 擴充套件 的目錄。此別名從版本 1.0...

sqlite第三方類庫 FMDB使用 2

相比於sqlite3來說core data存在著諸多優勢,它物件導向,開發人員不必過多的關心更多資料庫操作知識,同時它基於objc操作,書寫更加優雅等。但是它本身也存在著一定的限制,例如如果考慮到跨平台,則只能選擇sqlite,因為無論是ios還是android都可以使用同乙個資料庫,降低了開發成本...