152

Я хотел бы объединить несколько изображений в одно изображение с помощью ImageMagick. Чтобы объяснить немного лучше, я хочу, чтобы результат выглядел примерно так:

То есть у меня есть несколько скриншотов, и я хочу превратить их в одно изображение с оригинальными изображениями друг над другом.

По Google, я столкнулся с «составной» командой, но я не знаю, и если да, то как ее использовать, чтобы получить желаемый результат.

1 ответ1

234

Для любого количества входных файлов с именем in-<something>.jpg:

convert -append in-*.jpg out.jpg

Для добавления определенных файлов или пропуска номеров вместо полного "глобуса", вы можете явно указать входные файлы и затем append команду добавления

convert in-1.jpg in-5.jpg in-N.jpg +append out-in1-plus-in5-and-inN.jpg

Вы можете использовать -append (вместо +append) для вертикальной вставки.

Или же:

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

также создаст файл out.jpg который содержит вертикальную конкатенацию исходных изображений.

convert

Для простой конкатенации в одной строке или столбце достаточно параметра append инструмента convert . Обратите внимание, что -append объединяет все изображения по вертикали, создавая один столбец с n строками, а +append объединяет по горизонтали, создавая одну строку с n столбцами.

(См. ImageMagick: Параметры командной строки.)

montage

Чтобы получить более точный контроль над макетом, нам понадобится инструмент montage . montage -mode concatenate склеит входные изображения вместе, как опция append а -tile 1x контролирует применяемый макет.

tile следует формату столбцов × строк, но любая из сторон может отсутствовать, и montage выяснит, как удовлетворить ограничения.

Мы используем 1x (ровно один столбец с любым количеством строк), чтобы получить тот же эффект, что и -append . Без -tile 1x он будет объединять изображения, такие как +append , по -tile x1 (любое количество столбцов в одной строке).

(См. Примеры ImageMagick: Монтаж, Массивы изображений.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .