Use Automator, ImageMagick e Shell Scripting para combinar facilmente as capturas de tela do iPhone e outras imagens [Como fazer]

O tutorial de hoje mostrará como instalar a ferramenta de manipulação de imagem de linha de comando ImageMagick e como construir um serviço de sistema Automator usando script de shell. O Serviço tirará qualquer número de fotos e fará uma foto longa que contém todas elas. É como se você os colocasse em uma fileira sobre uma mesa, só que sem mesa e com um computador.

Surpreendentemente, é tudo muito fácil.

Pode parecer loucura dizer isso, mas mesmo em 2013, a linha de comando ainda é o melhor lugar para fazer um monte de tarefas com seu computador. Ainda mais louco é que algumas dessas tarefas envolvem fotos. Não convencido? Então deixe-me contar uma história.

Uma das coisas mais comuns que faço com fotos no meu Mac é tirar algumas capturas de tela de um iPhone ou iPad e combiná-las em uma única foto. Usamos imagens de paisagem nas postagens do Cult of Mac, e as capturas de tela do iPhone quase sempre são em retrato, então faz sentido colocar três delas lado a lado.


O problema é que isso é uma ocupação chata. Normalmente abro uma imagem no Acorn e arrasto as outras para cima (o Acorn as adiciona como camadas). Em seguida, pressiono ⌥⌘-c para alterar o tamanho da tela (dica: adicionar * 3 após a contagem de pixels existente na caixa de diálogo triplicar a largura), pressione ⌘-0 para dimensionar a visualização corretamente e, em seguida, arraste manualmente as três capturas de tela para alinhá-las. Então eu salvo para a web.

É um verdadeiro pé no saco.

Então, finalmente decidi fazer algo a respeito. Eu conhecia o ImageMagick, uma ferramenta de linha de comando que pode manipular imagens de praticamente qualquer maneira que você possa imaginar. Eu também uso o Automator o tempo todo para criar Serviços do Sistema, que são essencialmente plug-ins do Finder (ou outro aplicativo) que fazem coisas em arquivos, pastas e texto.

Achei que deveria ser capaz de combiná-los para criar um fluxo de trabalho que me permitisse selecionar algumas imagens no Finder, clicar com o botão direito nelas e concatená-las em uma única imagem. Bônus: Cult of Mac requer JPGs, então vamos deixar o plugin gerar JPGs, qualquer que seja o formato de entrada (geralmente PNG para capturas de tela do iOS).

Vamos lá.

Instalando ImageMagick

MacPorts e homebrew

Primeiro você precisa instalar o ImageMagick. Há muitas maneiras de fazer isso: Você pode construir e instalar você mesmo ou pode usar algo como Homebrew ou MacPorts para fazer isso por você. Eu usei MacPorts, pois há um instalador de pacote muito simples para Mountain Lion, Lion e Snow Leopard. Uma ressalva é que você precisará instalar o Xcode e suas ferramentas de linha de comando para usá-lo, mas o Homebrew requer que você cole uma linha de código no Terminal para colocá-lo em funcionamento.

As instruções para ambos estão nos links acima.

ImageMagick

Agora você pode instalar o ImageMagick. Usando MacPorts, digite o seguinte:

sudo port install ImageMagick

E para instalar o ImageMagick usando o Homebrew digite o seguinte:

brew install ImageMagick

Automator

Em seguida, precisamos construir nosso fluxo de trabalho do Automator. Abra o aplicativo e escolha “Serviço nesta janela (deve aparecer na inicialização. Caso contrário, ou se você já estiver mexendo no Automator, basta pressionar ⌘-N para um novo arquivo).

Agora vamos adicionar algumas etapas ao nosso fluxo de trabalho. Queremos a ação “Executar Shell Script”. A maneira mais rápida é pesquisá-lo na coluna da esquerda e arrastá-lo para a grande tela à direita:

Agora vamos adicionar um comando. Observação: se o Automator quiser adicionar “Obter itens selecionados do Finder” ao início deste fluxo de trabalho, deixe-o. Se você deseja testar o fluxo de trabalho dentro do Automator, você deve adicioná-lo você mesmo. Apenas certifique-se de removê-lo ao salvar o fluxo de trabalho, caso contrário, ele será executado duas vezes e você obterá alguns resultados estranhos.

Primeiro, altere a lista suspensa ao lado da opção “Passar entrada” para “como argumentos”. Isso vai passar seus arquivos como arquivos (acho que, de qualquer maneira - não sou codificador). Em seguida, precisamos colar o comando real.

O formato do nosso comando ImageMagick é este:

$> convert + append a.png b.png c.jpg

A parte “converter” é o comando que estamos usando. O “+ append” força o ImageMagick a colocar as imagens lado a lado (remova-o para empilhá-las verticalmente), e o “a.png b.png c.jpg” são - um tanto confusos - dois arquivos de origem e um arquivo de saída.

Você verá que o Automator já adicionou um pedaço de código à caixa de edição. Você só precisa colar isso após a linha que diz “fazer”:

 / opt / local / bin / convert "$ @" + append ~ / Desktop / shot.jpg

Como alternativa, você pode apenas selecionar tudo na caixa de edição e colar tudo:

para f em "$ @" do / opt / local / bin / convert "$ @" + anexar ~ / Desktop / shot.jpg. echo "$ f" feito

É importante observar que incluí o caminho completo para o comando "converter" aqui. Dependendo de sua instalação (se você usou o Homebrew ou MacPorts), isso pode estar em um lugar diferente. Esta versão funciona com instalações MacPorts. Também codifiquei permanentemente o caminho do arquivo resultante (a área de trabalho) e o nome do arquivo (shot.jpg). A única coisa que desejo alterar é o nome do arquivo; Não consigo descobrir como fazer o script pegar o nome de um dos arquivos de entrada e usá-lo como a raiz do JPG resultante. Qualquer ajuda é bem-vinda (via e-mail ou Twitter é melhor).

Agora você pode testá-lo selecionando algumas imagens no Finder e executando o fluxo de trabalho (use o grande botão “executar” na barra de ferramentas do Automator). Observação: você precisará ter a etapa "Obter itens selecionados do Finder" adicionada no início para fazer este trabalho dentro do próprio Automator.

Se funcionar, vá em frente e salve-o. Dê a ele um nome adequado (chamei o meu de Two Up, embora ele faça qualquer quantidade de imagens, não apenas duas). Ele agora deve aparecer como uma opção no Finder quando você clica com o botão direito nos arquivos de imagem.

Assim que colei os resultados de meus trabalhos na sala de bate-papo do Culto de Mac, todos começaram a reclamar e a pedir espaço em branco nas bordas e outras pequenas exigências meticulosas. Mas você pode fazer tudo isso com o ImageMagick, se quiser.

Não gostei, mas achei que seria uma boa ideia poder agrupar as fotos automaticamente enquanto as importava do meu iPhone. Eu fiz um plugin de captura de imagem para fazer isso.

Image Capture é um ótimo aplicativo integrado para Mac que permite copiar e excluir fotos de seus iDevices, bem como importar coisas de scanners. E você pode instruí-lo a aplicar certas regras e plug-ins na importação.

Para fazer um plugin, basta criar um novo arquivo no Automator, mas desta vez você escolhe Image Capture Plugin como o tipo de documento. Em seguida, basta copiar / colar as etapas do fluxo de trabalho de seu primeiro projeto neste. Salve, nomeie e pronto.

Agora, ao abrir o Image Capture com um iDevice conectado ao seu Mac, você pode apenas selecionar algumas fotos ali mesmo no dispositivo e enviá-las para este fluxo de trabalho. O arquivo será salvo em sua área de trabalho sem importar os arquivos reais ou removê-los do seu iPhone.

É evidente que as opções são quase infinitas. Dê uma olhada na biblioteca de comandos do ImageMagick para ver como ela é poderosa. E isso antes de envolvermos algo como Hazel, que pode executar scripts de shell automaticamente com base em todos os tipos de gatilhos.

Última postagem do blog

| Culto de Mac
September 11, 2021

HBO Go agora é compatível com o recurso de logon único da AppleO logon único atrai outro grande apoiador.Foto: AppleHBO Go agora é compatível com o...

| Culto de Mac
September 11, 2021

Como configurar o logon único para dispositivos Apple TV e iOSA Apple acaba de adicionar quatro novos provedores de TV ao recurso de logon único. V...

| Culto de Mac
September 11, 2021

Dica profissional: toque, não deslize, com o Siri RemoteTocar o ajudará a mover-se para cima e para baixo, um item de cada vez.Foto: Rob LeFebvre /...