alpha通道怎么能是-1?

时间:2012-05-08 20:06:52

标签: java alpha

我想知道单个像素的alpha通道如何为-1?我正在浏览PNG图像的每个像素(加载到缓冲图像,ARGB类型)。许多alpha值是-1(其他值大于零) - 这怎么可能?该值不应介于0到255之间吗?代码如下。谢谢你的提示!

// imagine some great loop for x and y before this code
int a = (scaledImage.getRGB(x, y) & 0xff000000) >> 24; // kill all bits except for the first 8, shift 24 to the right to get them
System.out.println("" + a); 

2 个答案:

答案 0 :(得分:2)

您遇到了代码扩展问题。请改用无符号移位运算符>>>

答案 1 :(得分:0)

如果将其视为unsigned int,则= -1 = 0xFF = 255.这只是解释alpha通道的255值的另一种方法。