2011-05-30 18:30:58 +0000 2011-05-30 18:30:58 +0000
172
172

Combinar múltiplas imagens usando ImageMagick

Gostaria de combinar várias imagens numa única imagem usando o ImageMagick. Para explicar um pouco melhor, quero que o resultado seja semelhante a isto:

Ou seja, tenho várias imagens de ecrã, e quero transformá-las numa só imagem com as imagens originais umas sobre as outras.

Por Googling, deparei-me com o comando ‘composto’, mas não sei se, e nesse caso como utilizá-lo para obter o resultado que quero.

Respostas (1)

266
266
266
2011-05-30 19:37:55 +0000

Para qualquer número de ficheiros de entrada chamados in-<something>.jpg:

convert -append in-*.jpg out.jpg

Para ter ficheiros específicos anexados, ou saltar números em vez de obter o “glob” completo, pode mencionar explicitamente os ficheiros de entrada e colocar o comando append depois

convert in-1.jpg in-5.jpg in-_N_.jpg +append out-in1-plus-in5-and-in_N_.jpg

Pode utilizar -append (em vez de +append) para colar vertical.

Ou:

montage -mode concatenate -tile 1x in-*.jpg out.jpg

criará também um ficheiro out.jpg que contém uma concatenação vertical das imagens de origem.

convert

Para uma simples concatenação numa única linha ou coluna, a opção append da ferramenta convert é suficiente. Note-se que -append concatena todas as imagens verticalmente, criando uma coluna com n linhas, e +append concatena horizontalmente, criando uma linha com n colunas.

(Ver ImageMagick: Opções de linha de comando .)

montage

Para obter um melhor controlo sobre o layout, precisaríamos da ferramenta montage. montage -mode concatenate cola as imagens de entrada como a opção append e -tile 1x controla o layout a ser aplicado.

tile segue o formato colunas×linhas, mas ambos os lados podem estar em falta e montage descobrirá como cumprir as restrições.

Estamos a utilizar aqui 1x (exactamente uma coluna com qualquer número de linhas) para obter o mesmo efeito que -append. Sem -tile 1x, juntar-se-ia às imagens como +append, por defeito a -tile x1 (qualquer número de colunas numa fila).

& (Ver Exemplos de ImageMagick: Montagem, Arrays de Imagens .)