Java JDK1.4 的Robot對象可以完成對"屏幕"像素的拷貝,完成屏幕圖像截取操作。Java應(yīng)用程序中可以直接調(diào)用此對象,完成對特定應(yīng)用程序的屏幕截取。
在Java JDK1.4 中提供的"機器人"Robot類用于產(chǎn)生與本地操作系統(tǒng)有關(guān)的底層輸入、測試應(yīng)用程序運行或自動控制應(yīng)用程序運行。Robot類提供了一個方法:createScreenCapture(..),可以直接將全屏幕或某個屏幕區(qū)域的像素拷貝到一個BufferedImage對象中,我們只需要將該對象寫入到一個圖像文件之中,就完成了屏幕到圖像的拷貝過程。
ScreenDemo類的generateSnapshot()方法用于實現(xiàn)對當(dāng)前屏幕的截取。
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
public class ScreenDemo {
public static File generateSnapshot() {
File snapshotFile = new File("D:/" + System.currentTimeMillis() + ".jpg");
int width = (int) Toolkit.getDefaultToolkit().getScreenSize().getWidth();
int height = (int) Toolkit.getDefaultToolkit().getScreenSize().getHeight();
try {
Robot robot;
robot = new Robot();
BufferedImage image = robot.createScreenCapture(new Rectangle(width, height));
ImageIO.write(image, "jpg", snapshotFile);
} catch (Exception e) {
e.printStackTrace();
}
return snapshotFile;
}
public static void main(String[] args) {
generateSnapshot();
}
}
posted on 2015-02-22 21:52
marchalex 閱讀(266)
評論(0) 編輯 收藏 所屬分類:
java小程序