我正在尝试使用 python 并理解 SVG 绘图。我希望 python 的行为类似于 java 脚本并从 SVG 获取信息。我知道 SVG 中可以有两种类型的信息。
- 基于 XML 的信息 - 例如 elementbyID、elementbyTagNames
- 结构信息 - 位置信息也考虑了转换 - 例如 getelementfrompoint、getboundingbox
我四处搜索并找到了 python 库,例如用于 svg 中的 xml 处理的 lxml。我还发现了 svgpathtools、svg.path 等库,但据我了解,这些库仅处理 svgpath 元素。
所以我的问题是,
- 有没有什么好的库支持在python中处理svg?(类似于java脚本)
请您参考如下方法:
我不认为这是可行的。我是指导您回答有关使用 Python 渲染 SVG 的问题 - 但在那之后您得到的只是像素。
在转换之间的任意点从 SVG 数据中提取位置信息可能只在浏览器本身中实现。您可能有两个选择:使用 headless 浏览器和 selenium/splinter在真实浏览器中加载您的 SVG 数据并在其中运行 javascript 语句,或者让您的 Python 代码在 Brython 中运行,并在浏览器中运行所有内容。在 Brython 中,您应该能够使用 Javascript 调用作为 SVG 对象的方法,因为它暴露给 Brython 本身。
