【发布时间】:2014-10-22 18:00:49
【问题描述】:
integer to rgb 有一个简单的算法可以将整数值转换为 0-255 之间的三个数字的 RGB 值。我从Android Colors 得到整数。我什至跑了:
System.out.println(Color.decode("-16711681"));
答案是 java.awt.Color[r=0,g=255,b=0],这是意料之中的。
我确实在第一步遇到了问题,-16711681 % 256 是 255,我希望红色为 0。我在 Java 中编码:
System.out.println(-16711681 % 256);
我得到 -1,这意味着我必须加上 256,我的红色是 255。有人可以帮我吗?
【问题讨论】:
-
为什么要用十进制文字来表示颜色?
0xFF00FF00比-16711681清晰得多。 -
我正在通过 websocket 发送颜色,在 Java 中获取我的颜色上的 getRGB() 方法并将它们发送到我的客户端似乎很简单。我正计划在 javascript 客户端提取 RGB。
标签: java colors rgb modulo modulus