Atalhos e AppleScript
O JPGBoost integra-se com as ferramentas de automatização próprias do macOS. Está disponível uma ação nativa nos Atalhos e no Spotlight, e um comando compress exposto ao AppleScript e ao Automator.
Este recurso está disponível tanto no JPGBoost Free quanto no Pro. No Free, cada imagem processada conta para a cota diária: 50 imagens por dia e 5 MB por arquivo. O JPGBoost Pro remove os dois limites.
Duas formas de automatizar
O JPGBoost expõe duas interfaces de automatização nativas do macOS. Ambas funcionam como processamento independente: recebem arquivos e ajustes como entrada, devolvem arquivos comprimidos como saída, e são independentes da lista atualmente aberta na janela do aplicativo.
- App Intents para a app Atalhos e o Spotlight.
- AppleScript para
osascript, o Editor de Scripts e o Automator.
O aplicativo não precisa de estar aberta
Esta é a principal diferença em relação à API local e às pastas monitorizadas, que exigem ambas que o aplicativo já esteja em execução.
Seja através de uma ação de Atalhos ou do comando AppleScript compress, o macOS reabre o JPGBoost automaticamente assim que chega um pedido, tal como qualquer outro aplicativo com suporte de scripts. Não tem de fazer nada, mesmo que tivesse fechado explicitamente o aplicativo antes.
O único efeito visível é um ligeiro atraso, o tempo que demora a abrir, quando o aplicativo não estava já aberta. Terminado o processamento, permanece aberta: o macOS não a fecha automaticamente.
A ação «Comprimir imagens»
A ação aparece automaticamente na app Atalhos, na categoria JPGBoost, assim que o aplicativo tenha sido aberta uma vez. Não é necessária qualquer configuração.
- Abra a app Atalhos e crie um atalho.
- Adicione uma ação que forneça arquivos, por exemplo Selecionar Arquivos ou Obter Conteúdo de Pasta.
- Adicione a ação Comprimir imagens do JPGBoost.
- Preencha os parâmetros que quiser. Os que deixar em branco podem ser preenchidos por um perfil de exportação.
- Encadeie outra ação a seguir, se necessário: a ação devolve os arquivos comprimidos.
| Parâmetro | Função | Obrigatório |
|---|---|---|
| Input Files | As imagens a comprimir | Sim |
| Output Format | Formato de saída desejado | Não |
| Quality | Qualidade de 1 a 100 | Não |
| Export Profile | Nome de um perfil de exportação existente | Não |
| Destination Folder | Pasta de saída (consulte o aviso abaixo) | Não |
O campo «Destination Folder»
Este é o ponto que mais costuma confundir. O campo Destination Folder é difícil de preencher corretamente a partir do editor de atalhos. A solução fiável consiste em passar por um perfil de exportação.
Este campo espera uma referência de pasta real em formato URL, ou seja, um caminho que comece por file:// (por exemplo file:///Users/eu/Downloads/), e não texto simples. Os seguintes métodos falham com um erro Invalid URL:
- escrever um caminho à mão, por exemplo
/Users/eu/Downloads; - arrastar uma pasta do Finder para o campo, que apenas deposita ali texto simples.
O editor de Atalhos do macOS também não oferece nenhuma ação nativa do tipo «Escolher uma Pasta» que permita construir uma de outra forma.
Caso 1: nenhum atalho para construir
Assim que o JPGBoost tiver sido aberto pelo menos uma vez, a frase genérica que o próprio aplicativo declara («Comprimir imagens com JPGBoost», «Comprimir com JPGBoost») é reconhecida diretamente pelo Spotlight, sem nunca abrir o app Atalhos.
Essa invocação direta transmite apenas os arquivos selecionados. Nenhum outro parâmetro é fornecido, o que provoca o erro «Pasta de destino em falta» enquanto a configuração abaixo não tiver sido feita.
Para que essa invocação funcione:
- No JPGBoost, abra Ajustes → Perfis e defina um perfil como perfil padrão, com uma pasta de destino configurada.
- No Finder, selecione as imagens a comprimir.
- Pressione
⌘Espaçoe depois digite «Comprimir imagens».
O JPGBoost preenche então automaticamente os parâmetros que faltam a partir do perfil padrão, incluindo a pasta de destino, o formato e a qualidade.
Nenhum atalho é necessário no app Atalhos.
Caso 2: com um atalho construído
Este caso é útil quando é preciso ter vários comportamentos disponíveis com nomes distintos. Por exemplo, «Comprimir para a Área de Trabalho» pode usar um perfil, enquanto «Comprimir para Arquivo» usa outro. O perfil padrão do caso 1 só permite lidar com um comportamento de cada vez.
- No JPGBoost, abra Ajustes → Perfis e crie um perfil com uma pasta de destino, selecionada com o seletor nativo do aplicativo.
- No app Atalhos, crie um novo atalho e dê a ele um nome claro, por exemplo «Comprimir para a Área de Trabalho».
- Na ação JPGBoost do atalho, preencha apenas Export Profile com o nome do perfil a ser usado. Deixe Destination Folder em branco: a pasta definida no perfil será usada automaticamente.
- O atalho fica então diretamente disponível no Spotlight com o nome que você deu a ele, em vez da frase genérica declarada pelo JPGBoost.
Spotlight
A ação também é acessível a partir do Spotlight. As frases de ativação, do tipo «Comprimir imagens com JPGBoost», estão traduzidas nos quinze idiomas suportados.
O título da ação, a sua descrição, os seus parâmetros e as suas mensagens de erro seguem o idioma da ferramenta que os apresenta (Atalhos ou Spotlight), independentemente do idioma escolhido para a própria janela do JPGBoost.
AppleScript
O comando compress usa-se tal como o de qualquer outro aplicativo com suporte de scripts.
tell application "JPGBoost"
compress {"/caminho/para/imagem1.png", "/caminho/para/imagem2.jpg"} ¬
to "/caminho/de/saida" format "webp" quality 80
end tell
Os parâmetros to, format e quality são opcionais. O parâmetro profile pode substituí-los, ou preencher o que eles não cobrem, exatamente como --profile na linha de comandos.
tell application "JPGBoost"
compress {"/caminho/para/imagem.png"} profile "Web JPEG"
end tell
O comando devolve uma cadeia JSON: um objeto por arquivo, com os campos path, originalSizeBytes, compressedSizeBytes, ratio, destination e error. É a mesma forma da saída --json da CLI e das respostas da API local.
A partir do Terminal
osascript -e 'tell application "JPGBoost" to compress {"/caminho/imagem.png"} profile "Web JPEG"'
A partir do Automator
Use a ação Executar Script AppleScript e cole nela o mesmo bloco tell. Assim pode criar um serviço acessível a partir do menu contextual do Finder.
Permissão de «Automação»
Da primeira vez, o macOS mostra o seu habitual alerta de permissão de «Automação»: o aplicativo que envia o comando (Editor de Scripts, Automator ou Atalhos) quer controlar o JPGBoost. Clique em Permitir. Esta permissão só é pedida uma vez.
Resolução de problemas
| Sintoma | Causa | Solução |
|---|---|---|
| Invalid URL na pasta de destino | O campo recebeu texto em vez de uma referência de pasta | Use um perfil de exportação com pasta de destino e deixe o campo em branco |
| A ação não aparece na app Atalhos | O aplicativo nunca foi aberta | Abra o JPGBoost uma vez e volte a abrir os Atalhos |
| A ação falha com uma mensagem de cota | A cota diária do JPGBoost Free foi atingida (50 imagens), ou um arquivo ultrapassa 5 MB | Aguarde a reposição à meia-noite, ou passe para o JPGBoost Pro para remover os dois limites |
| O comando AppleScript devolve um erro | Permissão de Automação negada | Verifique Ajustes do Sistema → Privacidade e Segurança → Automação. Uma recusa por cota Free não interrompe o lote: é assinalada arquivo a arquivo no JSON devolvido |