Yii2第三方類庫(kù)插件Imagine的安裝和使用
Imagine
Imagine 是一個(gè)面向?qū)ο蟮?PHP 類庫(kù)用于圖片操作。這個(gè)類庫(kù)能夠處理一些常用到的操作如:調(diào)整大小、裁剪、應(yīng)用過(guò)濾器等。
其Color類庫(kù)可用于對(duì)任意對(duì)定的顏色生成RGB值。并且還提供一些方法來(lái)繪制圖形如:圓弧,橢圓,線,片等。
此外,還可以利用一個(gè)靈活的字體類來(lái)加載任意字體文件,然后將文字插入到圖片中。
Imagine 是一個(gè)會(huì)經(jīng)常更新的類庫(kù),將來(lái)還會(huì)實(shí)現(xiàn):圖表生成、圓角過(guò)濾器等功能。
Yii2 安裝 Imagine
Imagine 的手動(dòng)下載和安裝這里就不做介紹了,可自行百度。這里介紹 Yii2 的 Composer 方式來(lái)安裝 Imageine。
方法一
php composer.phar require --prefer-dist yiisoft/yii2-imagine
方法二
在項(xiàng)目 composer.json 文件內(nèi)的 require 字段里添加如下代碼:
"yiisoft/yii2-imagine": "~2.1.0"
然后再項(xiàng)目根目錄下執(zhí)行命令(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'); // 縮略 // 參數(shù) inset 表示定框縮略 // 圖片完整縮略在 200x100 的框內(nèi) // 備注:定框的寬度或高度必須有一個(gè)小于圖片的實(shí)際尺寸,否則直接返回源圖尺寸 Image::thumbnail($srcImg, 200, 100, 'inset')->save($aimImg, ['quality'=>100]); // 縮略 // 參數(shù) outbound 表示單尺寸優(yōu)先縮略并居中截取 // 該參數(shù)為函數(shù)的默認(rèn)值,它會(huì)為您盡可能多的截取圖片但又不會(huì)超出圖片范圍 // 例:源圖 500x200,那么按照高度 100 縮略(變?yōu)?50x100),然后再居中截取 200x100 // 例:源圖 400x350,那么按照寬度 200 縮率(變?yōu)?00x175),然后再居中截取 200x100 // 例:源圖 100x80,那么不縮率不截取,直接返回源圖 100x80 Image::thumbnail($srcImg, 200, 100, 'outbound')->save($aimImg, ['quality'=>100]); // 縮略 // 按寬度 200 縮略,高度自適應(yīng) Image::thumbnail($srcImg, 200, null)->save($aimImg, ['quality'=>100]); // 縮略 // 按高度 100 縮略,寬度自適應(yīng) Image::thumbnail($srcImg, null, 100)->save($aimImg, ['quality'=>100]); // 剪切 // 參數(shù):源圖、寬度、高度、起始點(diǎn) // 將源文件 $srcImg 保存到 $aimImg Image::crop($srcImg, 400, 200, [100,100])->save($aimImg); // 旋轉(zhuǎn) // 未研究 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]); // 文字水印 // 參數(shù):源圖、文字、字體、起始點(diǎn)、字體配置 Image::text($srcImg, 'hello world', $srcTTF, [100,100] ,['color'=>'000000','size'=>50])->save($aimImg, ['quality'=>100]);
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 從零開(kāi)始學(xué)YII2框架(一)通過(guò)Composer安裝Yii2框架
- 從零開(kāi)始學(xué)YII2框架(二)通過(guò) Composer 安裝擴(kuò)展插件
- Yii學(xué)習(xí)總結(jié)之安裝配置
- Yii入門教程之Yii安裝及hello world
- 使用Composer安裝Yii框架的方法
- 詳解PHP的Yii框架中擴(kuò)展的安裝與使用
- yii2安裝詳細(xì)流程
- win7安裝php框架Yii的方法
- Yii安裝與使用Excel擴(kuò)展的方法
- Yii安裝EClientScript插件擴(kuò)展實(shí)現(xiàn)css,js文件代碼壓縮合并加載功能
- Yii框架安裝簡(jiǎn)明教程
相關(guān)文章
通過(guò)PHP實(shí)現(xiàn)用戶注冊(cè)后郵箱驗(yàn)證激活
這篇文章主要介紹了通過(guò)PHP實(shí)現(xiàn)用戶注冊(cè)后郵箱驗(yàn)證激活,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11laravel excel 上傳文件保存到本地服務(wù)器功能
今天小編就為大家分享一篇laravel excel 上傳文件保存到本地服務(wù)器功能,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11用PHP實(shí)現(xiàn)的生成靜態(tài)HTML速度快類庫(kù)
用PHP實(shí)現(xiàn)的生成靜態(tài)HTML速度快類庫(kù)...2007-03-03ThinkPHP 連接Oracle數(shù)據(jù)庫(kù)的詳細(xì)教程[全]
最近收集了一些關(guān)于THinkPHP連接Oracle數(shù)據(jù)庫(kù)的問(wèn)題,有很多朋友按照連接mysql的方法來(lái)操作,導(dǎo)致有一些方法在Oreale中無(wú)法正常使用2012-07-07PHP中遍歷二維數(shù)組_以不同形式的輸出操作實(shí)例
下面小編就為大家?guī)?lái)一篇PHP中遍歷二維數(shù)組_以不同形式的輸出操作實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08PHP數(shù)組和explode函數(shù)示例總結(jié)
有關(guān)php分割字符串explode函數(shù)的用法,使用explode函數(shù)將字符串分割到數(shù)組,這里給大家總結(jié)了幾個(gè)示例,需要的朋友參考下。2015-05-05