AS3中ARGB、RGB相互转换,获取ARGB中的Alpha值等方法
参考资料:http://blog.csdn.net/zeng622peng/article/details/6931485
package chen.color
{
/**
* 颜色相关的工具包
* @author ragged
* @qq 284950276
*/
public class ColorTools
{
private static var colorTools:ColorTools;
/**颜色相关的工具包*/
public function ColorTools($single:SINGLE)
{
}
/**获取颜色工具包单列*/
public static function getInstance():ColorTools
{
if(colorTools == null)
{
colorTools = new ColorTools(new SINGLE);
}
return colorTools;
}
/**ARGB转10进制*/
public function argbToNumber(a:Number, r:Number, g:Number, b:Number):uint
{
return a<<24 | r<<16 | g<<8 | b;
}
/**RGB转10进制*/
public function rgbToNumber(r:Number, g:Number, b:Number):uint
{
return r<<16 | g<<8 | b;
}
/**10进制转ARGB*/
public function numberToArgb(val:Number):Object
{
var col:Object = {};
col.alpha = (val >> 24) & 0xFF;
col.red = (val >> 16) & 0xFF;
col.green = (val >> 8) & 0xFF;
col.blue = val & 0xFF;
return col;
}
/**10进制转RGB*/
public function numberToRgb(val:Number):Object
{
var col:Object = {};
col.red = (val >> 16) & 0xFF;
col.green = (val >> 8) & 0xFF;
col.blue = val & 0xFF;
return col;
}
}
}
class SINGLE{};