Используя ImageMagick 7, вы можете использовать команду, подобную этой ...
magick -background none \
\( -page +111+64 a_0_0.png \) \
\( -page +94+48 b_0_1.png -alpha copy -set compose plus \) \
\( -page +108+88 c_0_0.png \) \
\( -page +102+62 d_0_0.png \) \
-page 256x256 -flatten png32:result.png
Это установит геометрию подкачки для каждого подизображения в пределах их собственных скобок.
Внутри скобокс изображением маски "b_0_1.png", "-альфа-копия" избавляется от черного, а "-set compose" применяет метод compose "плюс" к этому отдельному изображению.
Затем страницаразмер установлен в 256x256, и все части выровнены и расположены согласно их геометрии страницы.Поскольку для фона задано значение «none», прозрачный холст создается при выравнивании подизображений.
По умолчанию используется метод compose «over», поэтому он используется на изображениях без установленного метода compose.Изображение маски сглаживается с помощью метода compose «плюс».
Я тестировал это с IM6 на bash и с IM7 на Windows.Я изменил мой IM6 bash "convert" на "magick" для этого примера IM7.Он должен работать точно так же с любой версией.