awtrobot读取错误的颜色
我正在寻找一种独立于平台的方法来从屏幕上读取颜色,并通过鼠标和键盘操作模拟用户输入。 我以前一直在使用java.awt.robot
,但是在过去的两年中它已经开始在OSX中报告错误的颜色(其他操作系统似乎得到准确的颜色),如本问题所述 。
我正在寻找这个bug的解决方法或任何其他将提供此function的库/语言。
使用下面相当简单的代码可以certificate这个问题。
public void printColorAtCoordinate(int x, int y) { Color color; color = robot.getPixelColor(x, y); System.out.println("RGB: " + Integer.toHexString(color.getRGB())); }
它似乎得到了一些正确的颜色,例如0x000000
, 0x0000ff
, 0xff0000
但不是其他如0x00ff00
,它报告为ff22ff00
(而不是ff00ff00
)。 大多数颜色至少少量。