越来越给出的Java Color对象相应的十六进制颜色代码的方式?(A way of getting

2019-07-20 15:10发布

我已经检查其颜色的Java类文件和发现,我可以生成从十六进制代码串的Color对象(eg "#FFFFFF")使用Color.decode(); 方法。

我想实现的一个项目我工作的逆过程,但似乎并没有被已经内置于类此的方法。

是否有捷径可寻?

Answer 1:

String.format("#%06x", color.getRGB() & 0x00FFFFFF)

掩蔽用于去除阿尔法分量,在24-31位



Answer 2:

Color color = Color.BLUE;
Formatter f = new Formatter(new StringBuffer("#"));
f.format("%02X", color.getRed());
f.format("%02X", color.getGreen());
f.format("%02X", color.getBlue());
f.toString(); //#0000FF


Answer 3:

阅读: 获取HTML颜色代码与JColorChooser的一

答案有颜色转换成它的十六进制值的方法。



Answer 4:

还有另一种方法。 我以为我只是添加这种替代。

// ARGB = (255, 255, 0, 0) (Red) 
// hex -> "ffff0000"
String hex = Integer.toHexString(color.getRGB());

// Reduced to RGB: hex -> "#ff0000"
hex = "#" + hex.substring(2, hex.length());


文章来源: A way of getting a corresponding hex colour code given a Color object in Java?