通过使用BufferedImage对象调用getRGB(int x, int y),可以得到一个负数。
如何将三个不同的值(红色、绿色和蓝色)转换为这个单一的负数?
发布于 2012-12-02 05:41:11
使用Color类:
new Color(r, g, b).getRGB()发布于 2012-12-02 05:41:58
BufferedImage最终委托给使用以下代码的java.awt.image.ColorModel:
public int getRGB(Object inData) {
return (getAlpha(inData) << 24)
| (getRed(inData) << 16)
| (getGreen(inData) << 8)
| (getBlue(inData) << 0);
}修改它以满足您的需求是一项微不足道的工作。
发布于 2015-04-16 19:37:57
JB Nizet的答案是很棒的颜色,但是当创建成千上万次‘’类型的新对象时,它可能真的很慢。最简单的方法是:
int rgb = (red << 16 | green << 8 | blue)由ByteBit回答
https://stackoverflow.com/questions/13664011
复制相似问题