Screenshot Tab

Java

02/01/2018

Boa tarde galera, preciso fazer uma funcionalidade que tire um print ou salva uma imagem de alguma forma, inicialmente fiz um método que executa um print screen no botão que eu preciso e salva a imagem na aplicação, até ai beleza, meio caminho andado, o problema é que ele tira o print de todo o meu Desktop e preciso da imagem apenas de um tabview da aplicação em especifico, alguém poderia me ajudar?

public void screenshot() throws AWTException, IOException {
	Robot robot = new Robot();
	Dimension tamanho = Toolkit.getDefaultToolkit().getScreenSize();
	tamanho.setSize(1450, 607);
	Rectangle rectangle = new Rectangle(tamanho);
	BufferedImage img = robot.createScreenCapture(rectangle);
	File out = new File("teste.jpg");
	ImageIO.write(img, "jpg", out);
	
	} static {
		System.setProperty("java.awt.headless", "false");   
}


Minha Tab que preciso da imagem.

<p:tab title="Mapa" closable="false">
	<p:gmap id="gmap"
		center="#{trajetoController.latitudeInicial} , #{trajetoController.longitudeInicial}"
		zoom="10" type="HYBRID" style="width:100%;height:600px"
		model="#{trajetoController.rotaModel}">
	</p:gmap>
</p:tab>
Luis

Luis

Curtidas 0

Respostas

Luis

Luis

02/01/2018

Encontrei em outros fóruns algo desse exemplo que pode funcionar.

Window janela = [janela do seu aplicativo AWT/Swing];  
BufferedImage image = robot.createScreenCapture(janela.getBounds());


Porém, não sei se funciona para aplicação em Web. Alguém tem algum conhecimento sobre ?
GOSTEI 0
POSTAR