Автоматическое преобразование файлов Inkscape <= 0.91 в новый формат CSS 0.92

Inkscape 0.92 спрашивает пользователя, нужно ли преобразовать старые файлы, чтобы они соответствовали новому разрешению .

Selection pop up

Я выровнял все старые изображения в миллиметрах. Как я могу конвертировать все старые файлы с помощью скрипта? Есть ли аргумент inkscape, который я могу использовать для командной строки вроде

find -name "*.svg" | xargs inkscape ...

0
02.08.2017, 02:28
1 ответ

Возможно, вы сможете каким-то образом преобразовать файлы из командной строки, просмотрев файл

/usr/share/inkscape/extensions/dpiswitcher.py

(или аналогичное место установки ). Похоже, это код, который выполняет преобразование, и его можно запустить вне inkscape. Я дал ему имя файла svg в качестве аргумента, и он записал на стандартный вывод версию с такими различиями:

$ dpiswitcher.py /tmp/drawing.svg  >/tmp/new.svg
$ xmltidy  /tmp/new.svg 
$ xmltidy  /tmp/drawing.svg 
$ diff /tmp/drawing.svg  /tmp/new.svg

< <svg... width="210mm" height="297mm" viewBox="0 0 744.09448819 1052.3622047" id="svg3336" version="1.1" inkscape:version="0.91 r13725" sodipodi:docname="drawing.svg">
---
> <svg... width="793.700787417" height="1122.51968506" viewBox="0.0 0.0 793.700787403 1122.51968501" id="svg3336" version="1.1" inkscape:version="0.91 r13725" sodipodi:docname="drawing.svg">
17c17
<   <g inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1">
---
>   <g inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" transform="matrix(1.066667,0.000000,0.000000,1.066667,0.000000,0.000000)">

Это встроенная -справка:

$ dpiswitcher.py --help
Usage: dpiswitcher.py [options] SVGfile
Options:
  --id=IDS              id attribute of object to manipulate
  --selected-nodes=SELECTED_NODES
            id:subpath:position of selected nodes, if any
  --switcher=SWITCHER   Select the DPI switch you want
  --action=ACTION       

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

0
28.01.2020, 04:42

Теги

Похожие вопросы