ImageMagick и трубопроводы
-
18-09-2019 - |
Вопрос
У меня есть следующие команды, которые создают спрайт, содержащий нормальное состояние и состояние наведения:
convert -background none -pointsize 11 -fill white -size 100x -gravity NorthWest caption:'Test' top.png
convert -background none -pointsize 11 -fill grey -size 100x -gravity SouthWest caption:'Test' bottom.png
montage top.png bottom.png -geometry +0+0 -tile 1x2 -background none test.png
Я создаю два изображения: top.png и Bottom.png, а затем объединяю их в test.png.
Есть ли способ сделать это без записи верхнего и нижнего изображений на диск?
Могу ли я как-нибудь объединить команды?
Обновлять:Решение
montage \
<(convert -background none -pointsize 11 -fill white -size 100x -gravity NorthWest caption:'Test' png:-) \
<(convert -background none -pointsize 11 -fill grey -size 100x -gravity SouthWest caption:'Test' png:-) \
-geometry +0+0 -tile 1x2 -background none test.png
Решение
Это полностью не тестировалось, поэтому перед тестированием обязательно сделайте резервную копию соответствующих изображений:
montage \
<(convert -background none -pointsize 11 -fill white -size 100x -gravity NorthWest caption:'Test' png:-) \
<(convert -background none -pointsize 11 -fill grey -size 100x -gravity SouthWest caption:'Test' png:-) \
-geometry +0+0 -tile 1x2 -background none test.png
(Это называется "Замена процесса")
Не связан с StackOverflow