Обрезка .svg
файлов в командной строке проста:
$ inkscape --verb=FitCanvasToDrawing --verb=FileSave --verb=FileClose *.svg
Мне нужно сделать наоборот. Я хочу поместить рисунок в 64 x 64
холст точек (уже установлен во всех .svg
файлах). К сожалению, Inkscape не предоставляет FitDrawingToCanvas
команду. Кроме того, фитинг должен сохранять пропорции рисунка.
Если это имеет значение: я использую Ubuntu raring.
inkscape
svg
batch-processing
resize
Стефан Эндруллис
источник
источник
Ответы:
Я нашел способ сделать это в этом вопросе: Inkscape - рисование по центру на странице через командную строку / терминал
С "foo.svg" в качестве изображения для редактирования:
Чтобы отредактировать все изображения SVG в текущем каталоге:
Но эта вторая команда открывает массу окон, которые приведут к сбою компьютера, если вы редактируете слишком много изображений. Только для Linux эта команда будет работать лучше:
Для приведенной выше команды, если какой-либо из файлов является символической ссылкой, Inkscape отредактирует целевой файл, на который указывает символическая ссылка. Если вы не хотите, чтобы Inkscape делал это, вы можете отфильтровать любые символические ссылки с помощью этой команды:
Пока я в этом, я мог бы также опубликовать скрипт bash, который я сделал для этого:
Я позвонил
inkscape-center
и запустил это так:Требуется столько аргументов, сколько вы хотите, так что вы можете сделать что-то вроде этого:
Будьте осторожны - если вы укажете каталог вместо файла, он отредактирует каждый файл SVG в этом каталоге.
источник
Вы можете использовать viewBox, чтобы выполнить то, что вы хотите. Я не знаю, есть ли способ сделать это из Inkscape, но так как SVG - это стандартный формат, и может быть другой инструмент, который будет выполнять ту работу, которую вы хотите. Быстрый поиск «инструментов командной строки svg» выявил некоторые интересные результаты, в том числе этот для создания иконок CSS.
Второй вариант - написать собственный инструмент на выбранном вами языке. Основная суть в том, чтобы установить viewBox на высоту вашего документа, а затем установить ширину и высоту документа, который вы хотите. Наконец, установите атрибут preserveAspectRatio.
Вот как выглядят описанные выше модификации в документе, который изначально был 744x1052.
источник