2010-05-11 19 views
8

Actualmente estoy involucrado en un proyecto que requiere que tome repetidamente instantáneas de la pantalla. Estoy usando la función grabScreen de qt para hacer lo mismo. La pantalla se congela por medio segundo cada vez que el programa toma una instantánea hacer que el ordenador parecen ser muy lento :(Cómo tomar una instantánea en Linux - programáticamente C++

¿Alguien puede sugerir una mejor método de hacer esto?

+0

+1 Parece que la mayoría de las utilidades de captura de pantalla tardan uno o dos (incluso Imagemagick y otros programas más especializados). En Windows, la API de Win32 ofrece una función para esto. Seguramente X11 tiene algo? –

+0

eso es reconfortante ... sería genial si pudieras apuntar en la dirección en la que podría encontrarlo :) –

Respuesta

2

Se podría buscar en el fuente de, digamos, ksnapshot que es la aplicación de KDE basada en Qt que hace esto. Su archivo SVN es here.

+0

He visto el código fuente de ksnapshot y también he pasado por el código de un programa de captura de pantalla de ejemplo en el sitio web de trolltech (http://doc.trolltech.com/4.2/desktop-screenshot.html), que usan básicamente la misma función. Incluso estoy usando esa misma función (sin la interfaz GUI, no necesito la interfaz en este momento) –

3

Si está de acuerdo con hacerlo de una manera de nivel inferior, entonces debe buscar en una de esas herramientas xorg que no puedo recordar el nombre de. Está instalado por defecto y muestra la captura de pantalla en un formato de mapa de bits. Es una pena que no puedo recordar el nombre.

EDIT: ¡Lo tengo! Es "xwd". Aclamaciones.

Cuestiones relacionadas