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);
}
}