2012-08-13 56 views
2

我从320数字创建RGB。我得到了以下
输出:如何从java中的RGB获取原始值

-16776896 

我写了这个代码

Color c=new Color(320); 
System.err.println(c.getRGB()); 
System.out.println(c.getRed()+" "+c.getGreen()+" "+c.getBlue()+" "+c.getAlpha()); 
System.out.println(c.toString()); 

现在我想以检索从这个-16776896320值。我该怎么办?

+0

您使用的是什么颜色? java.awt.Color或org.eclipse.swt.graphipcs.Color或其他? – 2012-08-13 12:59:07

+0

我用java.awt.Color – Sumit 2012-08-13 13:04:02

回答

7
System.out.println(c.getRGB() & 0x00ffffff); 

的输入是按位OR d具有在Color构造0xFF000000。这是相反的操作。

实际上,如果它是负值或大于16777215,就不可能得到原始值。

+1

你可以elaborete你的答案。这个expalin究竟是怎么回事。成为Hones只是该构造函数的java.awt.Color的JavaDoc的读取。 ;-)。 – 2012-08-13 13:07:14

+0

Fommil谢谢你的作品.. – Sumit 2012-08-13 13:13:01

+0

是的... Fommil我标记你的答案为接受.. – Sumit 2012-08-13 14:07:37