javaでデスクトップ画面のスナップショットを撮りたいです。これどうやってするの。
これは、印刷画面を押してデータを ms-paint に貼り付け、ファイルを .png または .jpg 形式で保存するのと似ています。
javaでデスクトップ画面のスナップショットを撮りたいです。これどうやってするの。
これは、印刷画面を押してデータを ms-paint に貼り付け、ファイルを .png または .jpg 形式で保存するのと似ています。
このような:
Robot r = new Robot();
Toolkit t = Toolkit.getDefaultToolkit();
Dimension d = t.getScreenSize();
Image i = r.createScreenCapture(new Rectangle(0,0,d.width,d.height));
次のコードをコピーして Java クラスに貼り付け、引数としてファイル名を指定してメソッド captureScreen() を呼び出します。引数で指定したファイルにスクリーンショットが保存されます。
import java.awt.Dimension; import java.awt.Rectangle; import java.awt.Robot; import java.awt.Toolkit; import java.awt.image.BufferedImage; import javax.imageio.ImageIO; import java.io.File; ... public void captureScreen(String fileName) throws Exception { Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Rectangle screenRectangle = new Rectangle(screenSize); Robot robot = new Robot(); BufferedImage image = robot.createScreenCapture(screenRectangle); ImageIO.write(image, "png", new File(fileName)); } ...
以下のリンクで説明