2014-09-03 7 views
3

В настоящее время я пишу плагин Inkscape с использованием Python. Внутри этого плагина я хотел бы загрузить шаблон (существующий svg) из папки плагина и получить доступ к некоторым объектам в этом шаблоне по имени или ключу. Затем я хотел бы изменить границу и/или цвет заливки объекта и добавить к нему текст. Как мне это сделать, используя интерфейс скриптов python для Inkscape? Я нашел несколько примеров (см. Ниже) о том, как написать плагин для inkscape, но все они работают с уже открытыми документами.Загрузка и изменение svg внутри плагина Inkscape

  1. http://www.hoboes.com/Mimsy/hacks/write-inkscape-extension-create-multiple-duplicates/
  2. http://wiki.inkscape.org/wiki/index.php/Script_extensions
  3. http://ospublish.constantvzw.org/blog/tools/inkscape-plugins-in-python
  4. http://wiki.inkscape.org/wiki/index.php/Generating_objects_from_extensions
  5. http://wiki.inkscape.org/wiki/index.php/PythonEffectTutorial

ответ

0

Вы можете использовать lxml?

t = etree.parse("path/test.xml") 

Затем можно либо

  1. управлять свойствами t непосредственно - это может быть сделано из питона, не открывая Inkscape. Ваше дерево может быть сохранено с t.write("filename")
  2. добавить t к текущему открытому документу с использованием self.document.getroot().append(t)

Кроме того, это не то, что вы просили, но может сгодится: плагин Inkscape, что позволяет писать короткие фрагменты питона из Inkscape: http://www.smanohar.com/inkscape.php

 Смежные вопросы

  • Нет связанных вопросов^_^