使用ColorFilter

MaskFilter是對一個Paintalpha通道的轉換。而ColorFilter則是對每一個RGB通道應用轉換。所有由ColorFilter所派生的類在執行他們的轉換。都會忽略alpha通道。

Android包含三個ColorFilter

1.ColorMatrixColorFilter 可以指定一個4×5ColorMatrix並將其應用到一個Paint中。ColorMatrixes通常在程序中用於對圖像進行處理 ,而且由於它們支持使用矩陣相乘的方法來執行鏈接轉換,所以它們很有用。

2.LightingColorFilter 乘以第一個顏色的RGB通道,然後加上第二個顏色。每一次轉換的結果都限制在0255之間。

3.PorterDuffColorFilter 可以使用數字圖像合成的16Porter-Duff 規則中的任意一條來向Paint應用一個指定的顏色。

使用setColorFilter方法應用ColorFilter,如下所示:

myPaint.setColorFilter(new LightingColorFilter(Color.BLUE, Color.RED));   


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章