awtrobot читает неправильные цвета - PullRequest
3 голосов
/ 12 декабря 2011

Я ищу независимый от платформы способ считывать цвета с экрана и моделировать пользовательский ввод с помощью действий мыши и клавиатуры.Ранее я использовал java.awt.robot, однако некоторое время за последние 2 года он начал сообщать о неправильных цветах в OSX (другие операционные системы, кажется, получают точные цвета), как отмечено в в этом вопросе .

Я ищу обходной путь для этой ошибки или любую другую библиотеку / язык, который предоставит эту функциональность.

Использование довольно простого кода ниже может продемонстрировать проблему.

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

Похоже, что некоторые цвета корректны, например 0x000000, 0xffffff, 0x0000ff, 0xff0000, но не другие, такие как 0x00ff00, о которых сообщается как ff22ff00 (вместо ff00ff00),Большинство цветов по меньшей мере на небольшое количество.

...