PHP極其強大的圖片處理庫Grafika詳細教程(2):圖像特效處理模塊

該文章是接着上篇文章《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研發工程師

博客:segmentfault主頁

相關文章
相關標籤/搜索