Por exemplo 1.jpg, 2.jpg que são de dimensão axb, cxd.
Se eu executar algo como convert +append 1.jpg 2.jpg out.jpg
. Gostaria que out.jpg fosse (a+c)xb ou (a+c)xd.
Se eu executar algo como convert -append 1.jpg 2.jpg out.jpg
. Gostaria que out.jpg fosse ax(b+d) ou cx(b+d).
É possível fazer isso com o Imagemagick?
Responder1
Acabei escrevendo um pequeno roteiro.
Anexe duas imagens horizontalmente e combine com a altura mínima:
h1=$(identify -ping -format "%h" 1.jpg) &&
h2=$(identify -ping -format "%h" 2.jpg) &&
min_h=$(( h1 < h2 ? h1 : h2 )) &&
convert 1.jpg -resize x$min_h\> 1_shrink.jpg &&
convert 2.jpg -resize x$min_h\> 2_shrink.jpg &&
convert +append 1_shrink.jpg 2_shrink.jpg out.jpg &&
rm 1_shrink.jpg 2_shrink.jpg
Anexe duas imagens verticalmente e corresponda à largura mínima:
w1=$(identify -ping -format "%w" 1.jpg) &&
w2=$(identify -ping -format "%w" 2.jpg) &&
min_w=$(( w1 < w2 ? w1 : w2 )) &&
convert 1.jpg -resize $min_w\> 1_shrink.jpg &&
convert 2.jpg -resize $min_w\> 2_shrink.jpg &&
convert -append 1_shrink.jpg 2_shrink.jpg out.jpg &&
rm 1_shrink.jpg 2_shrink.jpg
Se quiser corresponder à dimensão máxima das duas imagens, basta alterar a condição entre parênteses de <
para >
.