2010-06-13 70 views
7

我想Java扫描特定颜色的屏幕。颜色扫描屏幕

任何想法,如何做到这一点?

+0

你需要做什么?只是好奇。 – 2010-06-13 23:46:28

+0

也这么想。这是我以前玩过的游戏中使用的第一种方法之一。纹理可以与具有纯色的外观交换,并且外部程序可以扫描屏幕。当有人找到直接在内存中访问变量的方法时,它就变得过时了。 – 2010-06-25 07:07:17

回答

14
Robot robot = new Robot(); 
    Rectangle captureSize = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()); 
    BufferedImage bufferedImage = robot.createScreenCapture(captureSize); 
    // ... 

    int color = image.getRGB(x, y); 

    int red = (color & 0x00ff0000) >> 16; 
    int green = (color & 0x0000ff00) >> 8; 
    int blue = color & 0x000000ff; 
    // ... 
+0

颜色或者颜色? – 2010-06-13 20:00:48

+0

@Reuben Mallaby剪切和粘贴的乐趣。颜色,您可以从颜色中找到r g和b值。我更新了我的文章 – 2010-06-13 20:03:32

+0

你应该告诉_why_医生应该被称为... – 2010-06-14 01:57:23

2

使用Java.awt.Robot截图作为图像并继续。