Come stampare lo schermo in Java

1. Panoramica

Quando è necessario eseguire un'azione della schermata di stampa sul desktop, è presente un pulsante "PrntScr" incorporato sulla tastiera per aiutarti. A volte è abbastanza.

Ma il problema sorge quando è necessario eseguire tale azione a livello di programmazione. In poche parole, potrebbe essere necessario salvare uno screenshot corrente come file immagine utilizzando Java.

Diamo un'occhiata a come possiamo farlo.

2. La classe dei robot

La classe Java java.awt.Robot è l'API principale che utilizzeremo. Questa chiamata contiene un metodo chiamato ' createScreenCapture ' che cattura uno screenshot quando viene passata una forma specifica:

robot.createScreenCapture(rectangle); 

Poiché il metodo precedente restituisce un'istanza java.awt.image.BufferedImage , tutto ciò che devi fare è scrivere l'immagine recuperata in un file utilizzando la classe di utilità javax.imageio.ImageIO .

3. Acquisizione e salvataggio del file di immagine

Il codice Java per l'acquisizione e il salvataggio delle immagini è il seguente:

public void getScreenshot(int timeToWait) throws Exception { Rectangle rec = new Rectangle( Toolkit.getDefaultToolkit().getScreenSize()); Robot robot = new Robot(); BufferedImage img = robot.createScreenCapture(rectangle); ImageIO.write(img, "jpg", setupFileNamePath()); }

Qui è possibile acquisire una parte dello schermo impostando la dimensione richiesta per l' istanza java.awt.Rectangle . Tuttavia, nell'esempio precedente, è stato impostato per acquisire lo schermo intero, impostando la dimensione dello schermo corrente.

4. Conclusione

In questo tutorial, abbiamo dato una rapida occhiata all'uso di una schermata di stampa in Java. Il codice sorgente degli esempi precedenti può essere trovato nel progetto GitHub.