該文章是接着上篇文章《PHP極其強大的圖片處理庫Grafika詳細教程(1):圖像基本處理》,因爲grafika功能太多,因此分開寫,其餘的點擊這裏segmentfault
《一、圖像基本處理》
《二、圖像特效處理模塊》
《三、圖像屬性處理》
《四、圖形繪製》app
咱們開門見山,直接繼續上實例,詳細瞭解點擊上面連接spa
grafika提供了11種濾鏡功能,能夠知足開發中的任何狀況需求。設計
這裏先介紹一個操做方法:apply
:它能夠將濾鏡效果應用到圖片3d
使用Blur
參數,模糊化一張圖片code
其中模糊度取值範圍爲0-100,數值越大,圖片越模糊blog
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Blur', 50); // 模糊度爲10,模糊度取值爲0-100 $editor->apply( $image, $filter ); // 將濾鏡應用到圖片 $editor->save($image,'yanying-blur.jpg');
咱們將圖片模糊參數調爲50教程
使用Brightness
,加亮或者變暗圖片圖片
其中亮度值取值範圍爲開發
-100 至 -1,變暗
0 圖片沒有變化
1-100圖片變量
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Brightness', -50); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Brightness-1.jpg');
使用Colorize
參數,調整圖片的紅綠藍三個基礎色來改變圖片顏色
顏色參數(紅色、綠色、藍色取值範圍相同)
取值-100至-1,顏色減小;
若是爲0表示不變;
取值1-100,表示色值增長
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Colorize', -50,50,-50); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Colorize.jpg');
使用Contrast
參數能夠改變圖片的對比度
對比度的取值和以前的也差很少,-100至-1,對比度減小;0不變;1至100,對比度增長
具體什麼叫對比度,自行百度,我也不是太清楚,畢竟不是搞設計的
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Contrast', 50); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Contrast.jpg');
使用Dither
來給圖像添加噪點,其參數取值只有兩個diffusion
:擴散;ordered
:規整的
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Dither', 'diffusion'); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Dither-diffusion.jpg');
Gamma
這個參數在平時是不經常使用的,只有在專業的圖像領域纔會使用。能夠理解爲色階,是灰階亮度值與灰階等級之間的數學關係。
這裏的Gamma
功能是校訂圖像色階,使得圖像看起來顏色更加正確
這裏的數字值取值範圍只有最小值沒有最大值只要 >=1.0均可以
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Gamma', 2.0); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Gamma.jpg');
使用Grayscale
使圖片全部的色彩丟棄,只保留黑白兩種顏色,沒有取值。
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Grayscale'); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Grayscale.jpg');
圖像反色,也就是弄得和膠片似得。
使用Invert
參數能夠達到圖像反色效果,也沒有可選值
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Invert'); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Invert.jpg');
就是把矢量圖形轉換成像素點組成的點陣圖形,也叫柵格化。搞ps的應該都清楚
該參數有個取值範圍只要大於或者等於1就能夠,若是值越大,像素點也就越大
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Pixelate',10); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Pixelate-10.jpg');
咱們取值5和取值10對比下
圖片銳化就是補償圖像的輪廓,加強圖像的邊緣及灰度跳變的部分,使圖像變得清晰。
使用參數Sharpen
能夠處理銳化,其取值爲1-100(包含)。
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Sharpen',50); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Sharpen.jpg');
咱們取值50,看下效果
經過數學計算檢測出圖像的邊緣,在ps中較爲經常使用。
這裏使用Sobel
參數達到相同效果,沒有值可選
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Sobel'); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Sobel.jpg');
嚴穎,PHP研發工程師