awtrobot读取不正确的颜色

时间:2011-12-12 19:14:52

标签: java macos osx-snow-leopard awtrobot

我正在寻找一种独立于平台的方式来从屏幕上读取颜色,并通过鼠标和键盘操作模拟用户输入。我以前一直在使用java.awt.robot,但是在过去的两年中,它已经开始在OSX中报告错误的颜色(其他操作系统似乎可以获得准确的颜色),如this question中所述。

我正在寻找此错误的解决方法或任何其他提供此功能的库/语言。

使用下面相当简单的代码可以证明这个问题。

public void printColorAtCoordinate(int x, int y)
{
    Color color;
    color = robot.getPixelColor(x, y);
    System.out.println("RGB: " + Integer.toHexString(color.getRGB()));
}

它似乎可以获得一些正确的颜色,例如0x0000000xffffff0x0000ff0xff0000,但不会报告0x00ff00之类的其他颜色作为ff22ff00(而不是ff00ff00)。大多数颜色至少少量。

0 个答案:

没有答案