Print Screen com Java

Outro dia precisei fazer um print screen com java, e demorei alguns minutos para achar no Google um exemplinho bacana. Então, resolvi postar aqui o que fiz. Não vou explicar o código, apenas deixarei alguns likns para o javadoc. Espero que ajude alguém apressado como eu.

Bom, vamos ao código:

public void takeAPrint() throws Exception{

Toolkit toolkit = Toolkit.getDefaultToolkit();
//Definindo a dimensão que quer capturar
//pode ser definido o tamanho que desejar
Dimension screenSize = toolkit.getScreenSize();
Rectangle screenRect = new Rectangle(screenSize);
// criando o print screen
Robot robot = new Robot();
BufferedImage screenCapturedImage = robot.createScreenCapture(screenRect);

//depois disso é só procurar a imagem no local indicado abaixo, no meu caso em:
// /Users/rodrigogomes/printScreen.png
//Aqui você pode alterar o formato da imagem para, por exemplo, JPG
//É só mudar o “png” para “jpg” e pronto
ImageIO.write(screenCapturedImage, “png”, new File(“/Users/rodrigogomes/printScreen.png”));

}

Espero que ajude alguém.

Refs:

http://java.sun.com/j2se/1.5.0/docs/api/java/awt/Rectangle.html

http://java.sun.com/j2se/1.5.0/docs/api/java/awt/image/BufferedImage.html

http://java.sun.com/j2se/1.5.0/docs/api/javax/imageio/ImageIO.html

http://java.sun.com/j2se/1.5.0/docs/api/java/awt/Robot.html#createScreenCapture(java.awt.Rectangle)

ps:ainda não descobri como colocar o código bonitinho nesse troço. Assim que descobrir eu deixo mais bonitinho rs

2 Respostas para “Print Screen com Java”


  1. 1 Rodrigo Rocco Rubim Novembro 11, 2008 às 11:44 pm

    Fantastico…problema resolvido em 30 segundos com Google + Ctrl-C/Ctrl-V do seu código

    Muito obrigado!

  2. 2 paulo Julho 21, 2009 às 2:24 am

    Show de bola cara, era isso que estava procurando. Parabéns e muito obrigado!


Deixe uma resposta