从32位值开始使用RGBA很简单,我以前使用的大多数库都实现了实用工具以避免所有的位移,如RGBA()
宏或类似的。我在livingocs上看不到这样的东西,也许它就在那里而我却想念它?
使用Flash 9/10,它必须是核心AS3类。
答案 0 :(得分:2)
最简单的方法:
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;
答案 1 :(得分:0)
不,没有特别的内置方法可以避免位移。如果您不想使用库,可以将一些合适的函数复制并粘贴到代码中 - google popped this,看起来很合适。