如何在java中使用Color Chooser获取颜色名称

我想要从Color选择器中选择颜色的名称,但现在它返回R,G,B值。 我想要颜色的名称以供进一步使用。任何人都可以帮助我吗?

http://java.sun.com/javase/7/docs/api/javax/swing/JColorChooser.html中有一个方法getColor()

这将返回一个颜色。 许多颜色都有名称( http://java.sun.com/javase/7/docs/api/java/awt/Color.html )但大多数都没有。 据我所知,你需要通过颜色的特殊名称来测试,以测试返回的颜色是否是其中之一。

EDIT ColorChooser返回java.awt.Color,而不是RGB值。 我不知道颜色的equals()合同是什么,但我怀疑你可以写:

Color c = chooser.getColor(); if (Color.BLACK.equals(c)) { // the color is black... } 

命名颜色是:

  static Color black The color black. static Color BLACK The color black. static Color blue The color blue. static Color BLUE The color blue. static Color cyan The color cyan. static Color CYAN The color cyan. static Color DARK_GRAY The color dark gray. static Color darkGray The color dark gray. static Color gray The color gray. static Color GRAY The color gray. static Color green The color green. static Color GREEN The color green. static Color LIGHT_GRAY The color light gray. static Color lightGray The color light gray. static Color magenta The color magenta. static Color MAGENTA The color magenta. static Color orange The color orange. static Color ORANGE The color orange. static Color pink The color pink. static Color PINK The color pink. static Color red The color red. static Color RED The color red. static Color white The color white. static Color WHITE The color white. static Color yellow The color yellow. static Color YELLOW The color yellow. 

对于稍微更广泛的颜色列表,您可以考虑解析类似于X11 rgb.txt文件并匹配其中的条目。

您可能会发现一些特定于域的命名方案,如X11或HTML4,但我认为您不会找到一个标准。 例如,维基百科的颜色列表基于前面提到的方案,Xona.com 颜色列表略有不同,等等。

我不确定Java是选择了一种标准(另一种标准)并为RGB颜色提供颜色名称。 所以我想你必须选择一个并自己实现自定义转换类。

此服务映射了许多很多颜色名称:

http://chir.ag/projects/name-that-c​​olor/

我不知道它是否可以/应该用作web服务。