Redimensione com precisão um aplicativo Mac que não seja do Cocoa

2

Eu quero fazer alguns screencasts e, em seguida, enviá-los para o Vimeo, que tem especificações de resoluções que trarão bons resultados. Como tal, gostaria de poder dimensionar de forma precisa e repetitiva a janela da aplicação da qual estou a fazer um screencast, para tirar o melhor partido desse espaço.

Pesquisando no Google, descobri respostas como esta :

tell application "Safari"
  activate
  set the bounds of the first window to {140, 0, 1160, 775}
end tell

Descobri que esse método funciona com alguns aplicativos que eu tentei (como o Opera e o Firefox), mas não com os dois aplicativos dos quais quero criar screencasts.

Quando eu tento com "Scratch" no lugar de "Safari", recebo

AppleScript Error
Scratch got an error: Can’t set bounds of window 1 to {140, 0, 1160, 775}.

e, eu recebo o mesmo erro quando uso "MINDSTORMS NXT" [a linguagem de programação NXT-G para Lego Mindstorms NXT ] no lugar de "Safari" (exceto pelo nome do aplicativo que causou o erro).

Presumo, em ambos os casos, que o erro se deve ao fato de que esses aplicativos não são nativos (Cocoa), mas construídos usando bibliotecas de plataforma cruzada. Eu também li que, às vezes, mudar o número da janela (por exemplo, "segunda janela", "terceira janela") ajudará, mas isso não aconteceu.

Agora, eu realmente não preciso saber como fazer isso no AppleScript, só quero uma maneira simples de definir as dimensões de uma janela para screencasting. Alguém tem uma dica?

    
por Clinton Blackmore 17.07.2009 / 23:07

1 resposta

1

É um kludge e muito manual, mas você pode usar um programa como Xscope para determinar o tamanho e a posição e usá-lo para ajudá-lo a posicionar manualmente a janela do seu screencast.

O "Não é possível definir os limites da janela 1", muitas vezes significa que a janela não existe quando o script foi executado. (por exemplo, a janela é realmente feita por um subprocesso que fornece a GUI real), de modo que pode ser o problema - ou que o aplicativo ignore todos os eventos do AppleScript.

    
por 19.07.2009 / 04:02