Как преобразовать папку с файлами SVG в PNG с помощью inkscape linux? - PullRequest
0 голосов
/ 16 мая 2019

У меня в папках с изображениями в моей установке WordPress несколько тысяч файлов SVG, и я хотел бы сейчас преобразовать все изображения в PNG, чтобы они отображались вместо файла SVG на моем веб-сайте. Я хотел бы использовать Inkscape, чтобы связать изображения с хорошим сжатием.

Как я могу преобразовать всю папку в файл PNG с заданным максимумом, где все изображения имеют то же имя, что и раньше? Как test49.svg будет test49.png.

Я пробовал несколько плагинов для WordPress с опцией резервирования PNG, но они не увенчались успехом.

Ответы [ 3 ]

0 голосов
/ 17 мая 2019

Теги предполагают, что вы хотите использовать Inkscape для этого. Взгляните на параметры командной строки, набрав «man inkscape» на терминале или посетив https://inkscape.org/doc/inkscape-man.html.

Чтобы преобразовать одно изображение, выполните

inkscape filename.svg --export-png = filename.png

Чтобы преобразовать несколько изображений, вы можете написать короткий скрипт bash, который читает все имена файлов из папки и для каждого повторяет эту команду.

Если вам все еще нужно изменить размер изображений, используйте для этого momarify imagemagick.

0 голосов
/ 17 мая 2019

Вы можете обработать целую папку файлов SVG с помощью Imagemagick, которая перегрузит работу в Inkscape, если она находится в вашей системе (по крайней мере, для версий 6.7.9-0 или выше).

Imagemagickпоставляется с системами Linux и также доступен для Mac OSX или Windows.

Использование Imagemagick 6:

Измените каталоги на свою папку, содержащую файлы SVG, затем

mogrify -format png -colorspace sRGB -density XXX *.svg

Эта команда создаст те же имена файлов, но с суффиксом .png и поместит их в тот же каталог.

Если вы хотите поместить PNG в другой каталог, создайте его (например, pngfolder), затем

mogrify -format png -path path_to/pngfolder -colorspace sRGB -density XXX  *.svg


Эта команда поместит получившиеся PNG в папку pngfolder.

Если на Imagemagick 7, поместите магию перед mogrify.

Установите плотность для любого выходного размера, который выхочу.Более поздние версии Inkscape имеют плотность по умолчанию 96, поэтому, если вы хотите, чтобы ваш PNG был в два раза больше, чем рендеринг SVG по умолчанию, используйте 2 * 96 = 192 и т. Д.

Если вы хотите высокое качествоPNG с плотностью по умолчанию затем используют -density 384 и добавляют -resize 25% сразу после этого (где 384 = 4 * 96 и 25% = 1/4)

0 голосов
/ 16 мая 2019

Я могу представить, что можно было бы написать макрос для клавиатуры. Сначала выясните, какие клавиши нужно нажимать, чтобы выполнить работу для одного файла, например, в браузере файлов нажмите Enter, чтобы открыть, затем Ctrl-Shift + S, чтобы сохранить как, затем используйте вкладку, чтобы настроить все, ... Затем напишите короткую программу, которая запускает последовательность несколько раз, пока не будут созданы все изображения. Или используйте существующую программу, которая позволяет вводить макросы. Позаботьтесь о том, чтобы между нажатиями клавиш оставалось достаточно времени для загрузки.

Или проверьте Интернет, если есть какие-либо конвертерные программы, они также могут конвертировать много файлов.

...