在java

时间:2017-04-15 15:35:30

标签: java

我知道将颜色转换为RGB的公式。 例如

Color c=new Color(100,100,100);
Int rgb1= c.getRed()*65536+c.getGreen()*256+c.getBlue();

这就是我们获得单个RGB值的方法。

使用java编程

int rgb2=c.getRGB();

当我比较这两个rgb1和rgb2时,它们显示不同的值。 我的第一个等式出了什么问题。请善意解决我的问题。感谢

1 个答案:

答案 0 :(得分:1)

那是因为第一种方法忽略了颜色的Alpha值 您可以看到c.getAlpha()返回255并且您不使用此值,但c.getRGB();确实使用了它,因此它返回FF646464(以十六进制为基数),这与{{ 1}}。