Asunto: Capturar pantalla actual en una imagen con Delphi
¿Cómo puedo capturar la pantalla del usuario (lo que tiene abierto) y guardarla en un fichero de imagen?
Publicado:
Jue Sep 17, 2009 10:58 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Capturar pantalla actual en una imagen con Delphi
Anuncios
varios escribió:
¿Cómo puedo capturar la pantalla del usuario (lo que tiene abierto) y guardarla en un fichero de imagen?
En el siguiente enlace tienes la descarga gratuita del código fuente de la aplicación AjpdSoft CapPan que te servirá como ejemplo de cómo capturar la pantalla en una imagen o incluso imprimirla:
Asunto: Re: Capturar pantalla actual en una imagen con Delphi
Anuncios
Aquí tienes el código para capturar la pantalla en una imagen:
Código:
procedure TForm1.capturarPantallaClick(Sender: TObject);
var
handlePantalla : hdc;
begin
//ocultamos el formulario de la
//aplicación para que no aparezca
hide;
image1.autosize := false;
sleep(1000); //esperamos un segundo
image1.picture := nil; //eliminamos el contenido del image1 actual
//establecemos el tamaño de image1 al tamaño de la resolución de la pantalla
image1.SetBounds(0, 0, screen.width, screen.height);
handlePantalla := GetDesktopWindow; //obtenemos el handle de la pantalla
//copiamos la captura a image1, mediante la función BitBlt
BitBlt(image1.Canvas.handle, 0, 0, screen.width, screen.Height,
getdc(handlePantalla), 0, 0, srcCopy);
ReleaseDC(0, handlePantalla); //liberamos el objeto
show;
image1.autosize := true;
end;
En el formulario necesitarás un TImage, con la propiedad "name" a "image1".
Para guardar la imagen del TImage a un fichero utiliza este código:
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A