1.截取整个屏幕
功能:每隔200ms自动截取整个屏幕
public class GetImage extends TimerTask
{
String saveDir = "H:\\whiplash";
int imageName = 1;
String imageFormat = "jpg";
public void run(){
try {
//获取屏幕大小
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
Rectangle rectangle = new Rectangle(screen);
Robot robot = new Robot();
BufferedImage image = robot.createScreenCapture(rectangle);
ImageIO.write(image, imageFormat, new File(saveDir, imageName++ + "." + imageFormat));
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args)throws Exception {
Timer t = new Timer();
//在指定时间安排指定任务
//第一个参数,是安排的任务,第二个参数是执行的时间,第三个参数是过多长时间再重复执行
Date date = new Date();
t.schedule(new GetImage(), date,200);
}
}
2.自定义截取屏幕位置与大小
功能:每隔1s中自动截取指定区域
public class GetImage extends TimerTask
{
int height = 120;
int width = 1650;
String saveDir = "H:\\whiplash";
int imageName = 1;
String imageFormat = "jpg";
public void run(){
try {
Rectangle rectangle = new Rectangle(150,850,width,height);
Robot robot = new Robot();
BufferedImage image = robot.createScreenCapture(rectangle);
ImageIO.write(image, imageFormat, new File(saveDir, imageName++ + "." + imageFormat));
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args)throws Exception {
Timer t = new Timer();
//在指定时间安排指定任务
//第一个参数,是安排的任务,第二个参数是执行的时间,第三个参数是过多长时间再重复执行
Date date = new Date();
t.schedule(new GetImage(), date,1000);
}
}