我有一个存储在由Color.getRGB()方法生成的文件中的sRGB编号,如下所示:
//example for RED color
int num = Color.RED.getRGB(); // num is -65536 for RED
// save num to a file.
现在我必须从该文件中读取值,并且必须将每个数字转换为[x,y,z]
RGB格式。从-65536
开始,我需要[255,51,51]
。
有谁能告诉我如何在java中做到这一点?
答案 0 :(得分:2)
这是
int num = Color.RED.getRGB();
int blue = num & 255;
int green = (num >> 8) & 255;
int red = (num >> 16) & 255;
System.out.println("R:"+red+"\n"+"G:"+green+"\n"+"B:"+blue);
答案 1 :(得分:0)
Color color = new Color(-65536);
int r = color.getRed();
int g = color.getGreen();
int b = color.getBlue();
System.out.println(String.format("%d %d %d", r, g, b)); // 255 0 0
答案 2 :(得分:0)
正如documentation中提到的,Color类中有一个方法可以获得此
getRed()
getGreen()
getBleu()