Изменение масштаба .svg для составного изображения с помощью ImageMagick

329
Vico

Я сделал несколько пакетов для автоматизации значков папок и библиотек из целых символов twemoji. Вот мой репозиторий на Github.

Для резюмировать мою проблему: В основном это скрипты преобразует, используя Inkscape, а Emoji .svg в восьми размерно различных изображений (например .: emoji_16.png, emoji_20.png, emoji_24.png, emoji_32.png, emoji_40.png, emoji_48.png, emoji_64.pngи emoji_256.png).

Затем я перехожу к слою каждого из этих изображений поверх образа базовой папки (несколько разных размеров .pngs, извлеченных из .ico), и в результате я получаю композитный файл Windows .ico.

Команды следующие:

Для растеризации эмодзи с использованием inkscape:

inkscape <svg_file> --export-png="emoji_XX.png" -wXX -hXX --without-gui 

Для составного изображения с папкой png и результирующим растром выше:

magick <folder_png_xx> emoji_XX.png -gravity SouthEast -geometry +16+29 -composite "compositeicon_XX.png" 

И затем я объединяю полученные compositeiconPNG в один .ico:

magick compositeicon_XX.png compositeicon_64.png compositeicon_48.png compositeicon_40.png compositeicon_32.png compositeicon_24.png compositeicon_20.png compositeicon_16.png output.ico 

Я хочу знать, возможно ли упростить этот процесс, и полностью отказаться от inkscape, потому что я хочу запустить эквивалентный скрипт bash на моем raspberry pi (raspbian headless / lite).

0

0 ответов на вопрос