容易,因爲它與32位值的RGBA一起工作,我以前使用的大多數庫都實現了實用程序以避免所有的位移,比如RGBA()
宏或類似。我不能在livedocs上看到這樣的東西,也許它在那裏,我錯過了它?AS3沒有顏色/ rgba支持類嗎?
使用Flash 9/10,它需要是一個核心的AS3類。
容易,因爲它與32位值的RGBA一起工作,我以前使用的大多數庫都實現了實用程序以避免所有的位移,比如RGBA()
宏或類似。我不能在livedocs上看到這樣的東西,也許它在那裏,我錯過了它?AS3沒有顏色/ rgba支持類嗎?
使用Flash 9/10,它需要是一個核心的AS3類。
AS3沒有這種東西。那裏可能有課。
最簡單的方法:
var d:BitmapData = new BitmapData(10,10);
var pixel:int = d.getPixel(5,5);
var red:int = pixel >> 16;
var green:int = pixel >> 8 & 0xff;
var blue:int = pixel & 0xff;
在這裏,我創建了一個BitmapData。然後得到點(5,5)的顏色。這裏的像素是RGB。然後做一些轉換來獲得組件。
對於ARGB值(編者):
var argb:int = 0x11223344;
var alpha:int = argb >> 24;
var red:int = argb >> 16 & 0xff;
var green:int = argb >> 8 & 0xff;
var blue:int = argb & 0xff;
不,沒有特定的內置方法來避免位移。如果你不想使用庫,你可以複製和粘貼一些適當的功能到你的代碼 - 谷歌彈出this了,它看起來很合適。
@MorrisLiang。請注意,閃存將顏色信息存儲爲ARGB,而不是RGBA。 – 2011-04-01 02:32:22
對不起,我一年沒有編碼AS3。 – MorrisLiang 2011-04-01 05:14:24
我用'>>'發現問題,我不得不使用'>>>',這是我從來不知道的! – 2011-04-03 11:36:01