Este es un pequeño proyecto de un capturador de pantalla escrito en lenguaje java con la ayuda del IDE de Netbeans version 6.9, utilizando la clase Robot de java.
La clase que hace todo el trabajo (de la captura) es la clase capture.java, el código de esta clase es:
package jcapture; import java.awt.*; import java.awt.image.*; import java.io.*; import javax.imageio.ImageIO; import javax.swing.JFileChooser; import javax.swing.JOptionPane; import javax.swing.filechooser.FileNameExtensionFilter; /** * @web http://www.jc-mouse.net * @author Mouse */ public class Capture { private BufferedImage image; private FileNameExtensionFilter filter = new FileNameExtensionFilter("Archivo de Imagen","jpg"); private JFileChooser fileChooser = new JFileChooser(); /* CAPTURA LA PANTALLA */ public void captureScreen(Point p , Dimension screenSize) { try { //crea el area de captura Rectangle screenRectangle = new Rectangle(p, screenSize); Robot robot = new Robot(); image = robot.createScreenCapture(screenRectangle); Guardar_Foto(); } catch (Exception ex) { } } private void Guardar_Foto(){ String file=null; fileChooser = new JFileChooser(); fileChooser.setFileFilter(filter); //fileChooser.setCurrentDirectory(new java.io.File("e:/capturas/")); int result = fileChooser.showSaveDialog(null); if ( result == JFileChooser.APPROVE_OPTION ){ file = fileChooser.getSelectedFile().toString(); guardar_imagen(file + ".jpg"); } } /* guarda la imagen en disco*/ private void guardar_imagen(String f){ try { //se escribe en disco en formato JPG ImageIO.write(image, "jpg", new File(f)); JOptionPane.showMessageDialog(null, "Captura guardada en disco"); } catch (IOException e) { JOptionPane.showMessageDialog(null, "Error: no se pudo guardar la imagen"); } } }
Bueno, todo esto lo puedes ver en el siguiente video, así queda más claro:
Descargate el proyecto desde el siguiente enlace (jCapture)
6 comentarios:
Muy buen aporte... pero te queria preguntar ... como puedo cambiar el tamaño manualmente del frmPaint sin la necesidad de ingresar los tamaños?
Saludos!
debes añadir eventos del mouse para cambiarle el tamaño utilizando el cursor
gracias men son de muxa ayuda
x seaca tienes manuales sobre arreglos y vectores
hola hermano esta muy bueno el programa gracias por ese aporte...
hermanitoyo ando buscando un programa similar al tuyo pero mucho mas sencillo que l que tu creates yo busco.
Un programa que me haga captures de pantalla al presionar un clic y se guarde automáticamente en una carpeta cualquiera.
que parte de tu programa me seria util para yo crear lo que ando buscando
por favor le agradecería muchísimo su ayuda.
GRACIAS...!!!!
pues si quieres automatizar las cosas, solo debes jugar con los eventos del mouse y del teclado, asi haces la captura de toda la pantalla o de regiones especificas, también puedes utilizar un timer para capturar la pantalla cada cierto tiempo o de la clase robot, tienes muchas opciones para hacer lo que quieres hacer ;)
Hola!
Cómo haces el rectángulo rojo?
Publicar un comentario