У меня есть некоторый код, который захватит область пикселей на экране и превратит их в объект BufferedImage. Дело в том, что это МАССОВО медленно, поэтому я ищу поддержку в увеличении скорости!
Код выглядит следующим образом:
public BufferedImage getScreenPortion(Point topleft,Point bottomright){
int width = bottomright.x - topleft.x;
int height = bottomright.y - topleft.y;
BufferedImage bi = new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB);
for(int p=0;p<height;p++){
for(int i= 0;i<width;i++){
Color pixel = robot.getPixelColor(topleft.x+i, topleft.y+p);
bi.setRGB(i, p, pixel.getRGB());
}
}
return bi;
}
и я передаю его: getScreenPortion(new Point(1081,824),new Point(1111,844));
, что означает, что я пытаюсь получить области примерно 30x20 - но это занимает 7 секунд, что ужасно медленно!