java - robots.getColorPixel() 返回错误的颜色?

标签 java colors awtrobot

在我的程序中,我使用 java Robots 方法:robot.getPixelColor(x, y);

由于这是 sRGB 色彩空间,我使用以下代码将其转换为 RGB 色彩空间。

当我打开 MS Paint 并将所有内容涂成黑色时,我的 java 程序打印 2, 2, 2 而不是预期的 0, 0, 0

int pixelColor = robot.getPixelColor(x, y).getRGB();
int blue = pixelColor & 0xff;
int green = (pixelColor & 0xff00) >> 8;
int red = (pixelColor & 0xff0000) >> 16;
System.out.println(red+", "+green+", "+blue);

最佳答案

我使用了 2 个不同的外部程序,似乎我的显示器显示了错误的颜色,因为黑色显示为 1, 1, 1 (0, 0, 0)。

修复: 重置您的 AMD/Nvidia 驱动程序颜色设置,然后重新启动您的电脑。

关于java - robots.getColorPixel() 返回错误的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59633474/

相关文章:

java - ServerSoket的checkOldImpl方法有什么用?

python - 使用 matplotlib.colors.Colormap 将标量值映射到 RGB 时出现奇怪的颜色图

ios - 我如何在我的应用程序中实现一个按钮,以便每次用户按下它时,整个应用程序的默认颜色都会改变

javascript - 如何使用 javascript 更改网页上的字体颜色?

用户闲置 10 分钟后,Java 应用程序使屏幕显示无响应

java - 无效的 key 代码@java

Java selenium headless (headless)模式下载 PDF 问题

java - JEdi​​torPane 和 HTMLEditorKit 的替代品——太慢了

java - 在控制台应用程序中按下字母 'e' 时停止 java 程序

Java - .Net 对象交换,不基于 Web