画面から色を読み取り、マウスとキーボードの操作によるユーザー入力をシミュレートする、プラットフォームに依存しない方法を探しています。以前は を使用していましたが、この質問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