-2
我有幾個問題,當我幾次做多個屏幕截圖時:例如,我有時會做兩個屏幕截圖,第二個屏幕截圖與第一個截屏相同。多個屏幕截圖捕獲相同的圖像
這是我的代碼:
public static void main(String[] args) {
BufferedImage screenshot = screen();
save_screen(screenshot,"title1");
//some instructions
screenshot=screen();
save_screen(screenshot,"title2");
}
private static BufferedImage screen(){
BufferedImage image=null;
try {
image = new Robot().createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()));
ImageIO.write(image, "png", new File("/screenshot.png"));
} catch (HeadlessException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
} catch (AWTException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
return image;
}
private static void save_screen(BufferedImage image,String title){
File output = new File("C:\\Users\\MyPC\\Desktop\\" + title + ".png");
File dir = output.getParentFile();
if (dir.exists() || dir.mkdirs()) {
try {
ImageIO.write(image, "PNG", output);
} catch (IOException e) {
e.printStackTrace();
}
} else {
System.out.println("Bad Path - " + dir);
}
}
我能做些什麼來解決這個問題?
預先感謝您!
後恰好添加的時間間隔低至0.5秒。 **更高的**時間或**更低的** – Thecarisma
個人而言,我會避免在截圖時將截圖寫入磁盤,這是您可能不想要的開銷。你可以考慮使用'Robot'的同一個實例,進一步減少開銷。鏡頭之間的一般延遲是多少? – MadProgrammer