1. ホーム
  2. java

[解決済み] Javaでスクリーンショットを撮って、何らかの画像に保存する方法はありますか?

2022-07-03 17:33:06

質問

タイトル通りシンプルなものです。Java コマンドだけを使用してスクリーンショットを撮り、それを保存することができますか? それとも、スクリーンショットを撮り、それをクリップボードから取得するために、OS 固有のプログラムを使用する必要があるのでしょうか?

どのように解決するのですか?

信じられないかもしれませんが、実際には java.awt.Robot を使用して、スクリーンから読み取ったピクセルを含む画像を作成することができます。

今試してみましたが、全体はこんな感じに仕上がります。

Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
BufferedImage capture = new Robot().createScreenCapture(screenRect);
ImageIO.write(capture, "bmp", new File(args[0]));

注意: これはプライマリモニタのみをキャプチャします。参照 グラフィックスコンフィギュレーション を参照してください。