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






Fantastico…problema resolvido em 30 segundos com Google + Ctrl-C/Ctrl-V do seu código
Muito obrigado!
Show de bola cara, era isso que estava procurando. Parabéns e muito obrigado!