我正在构建一组包含不幸数量的硬编码值的SVG文件(它们必须打印一些大小为mm的元素,而其他元素必须按百分比缩放,并且大多数值是相对于彼此定义的).而不是手工管理这些数字(天堂禁止我想改变一些东西),我想我可能会用我可信赖的锤子Python来完成任务.
SVG 1.1本身并不支持任何可以让我按照自己的意愿行事的变量方案,而且我不想将javascript或不稳定的w3c草案规范引入混合中.一个显而易见的解决方案是使用字符串格式来读取,解析和替换SVG文件中的变量.对于更大的文档来说,这似乎是一个坏主意,但具有简单和便携的优点.
我的第二个问题是调查可用的python-> svg库.不幸的是,似乎少数选项往往太新(pySVG仍然有一个不稳定的界面),太旧(自2005年以来没有更新),或被放弃.我没有密切关注,但我的感觉是图表应用程序不够灵活,无法生成我的文档.
我遇到的第三个选项是使用一些其他绘图工具(例如cairo)可以说服推出svg.这具有(潜在)缺点,即不能原生地支持对我来说如此重要的绝对元素大小,但可能包括输出PDF的能力,这将是方便的.
我已经完成了谷歌搜索,所以我正在寻找那些使用过任何提到的方法或者可能知道其他方法的人的意见.选择任何解决方案的长期稳定性对我来说很重要(这是手动编码的原始原因,而不仅仅是使用插图画家).
最佳答案