Tome una captura de pantalla de la ventana superior

Quiero tener un AppleScript que tome una captura de pantalla de la aplicación más frontal. He usado este AppleScript:

tell application "System Events" -- get frontmost process
   set frontmostProcess to first process where it is frontmost -- this will be the script process
   set visible of frontmostProcess to false -- hide the script process
   repeat while (frontmostProcess is frontmost) -- wait until the script is hided
       delay 0.2
   end repeat
   set secondFrontmost to name of first process where it is frontmost -- get name of frontmost process (ignoring the script process)
   set frontmost of frontmostProcess to true -- unhide the script process
end tell
tell application secondFrontmost to set winID to id of window 1 -- get WindowID of frontmost window of frontmost process
do shell script "screencapture -c -x -l " & winID -- -c is used to store it in the clipboard. -x is used to mute the sound. -l is used to refer to the prefered windowid.

pero no funciona para Snow Leopard. Si alguien pudiera darme alguna orientación sobre cuál es la sección no compatible del código, estaría feliz de ir e investigar por mí mismo.

Creo que Snow Leopard no es compatible con la frontmostparte, pero no puedo obtener ninguna información para respaldar esta suposición...


Cmd++ y funciona , pero quiero un Applescript para poder reemplazar el acceso directo para abrir el Applescript, que automáticamente tomará una foto de la ventana activa Shift.4SpaceClick Window

Esto es para que no tenga que hacer clic en el espacio y luego hacer clic en las ventanas que quiero.

Tomo muchas capturas de pantalla y constantemente hago clic en el espacio y hacer clic se vuelve molesto ahora.

El applescript, esencialmente, salta el space+click window

¿Estás seguro de que la opción '-l' para captura de pantalla es compatible con 10.6? No aparece en la página de manual, o screencapture -h.
@Kent Soy muy nuevo en Applescript, así que fui lo suficientemente ingenuo como para usar los resultados publicados en línea para la captura de pantalla, pensando que eran 10.6.8. Gracias, lo acabo de comprobar en mi terminal también. ¿Conoce alguna forma de seleccionar windowid en 10.6.8? Porque en eso se basa el guión :)

Respuestas (3)

Acabo de hackear esta pequeña herramienta.

https://github.com/vorgos/QuickGrab

Es una herramienta de línea de comandos que capturará la ventana más activa superior o cualquier ventana que especifique, al igual que la -lopción en la versión más reciente de screencapture.

Espero que haya ayudado.

Esto es excelente, funciona bien en scripts.

¿Tomar una captura de pantalla de la ventana más frontal (a través de shift-command-4 clic en la barra espaciadora) no es adecuado?

Sí, lo hace, pero quería un Applescript para poder reemplazar el acceso directo para abrir el Applescript para que automáticamente tome una foto de la ventana activa, para que no tenga que hacer clic y luego hacer clic en las ventanas que quiero space. Tomo muchas capturas de pantalla y constantemente hago clic en el espacio y hacer clic se vuelve molesto ahora.

He estado tratando de resolver esto por un tiempo ... si obtiene la herramienta de depuración de Quartz y va a herramientas -> mostrar información de la ventana al pasar el mouse ... y usa esto en cualquier ventana que prefiera ... lo hará le doy la ID que necesita para pasar al comando de captura de pantalla en Shell... le paso -c y -l y es hermoso... finalmente