用Python处理SVG

2024-09-28 01:24:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用python并理解SVG绘图。我希望python的行为类似于java脚本,并从SVG获取信息。我知道SVG中可以有两种类型的信息。在

  1. 基于XML的信息—例如elementbyID、elementbyTagNames
  2. 结构信息-考虑转换的位置信息-例如getelementfrompoint、getboundingbox

我到处搜索,发现了一些python库,比如用于svg中xml处理的lxml。我还发现了像svgpathtools这样的库,svg.path,但据我所知,这些只处理svgpath元素。在

所以我的问题是

  1. 有没有好的库支持在python中处理svg?(类似于java脚本)

Tags: svg脚本信息绘图类型xmljava结构
3条回答

谢谢你的回答和帮助。在

在阅读了所有的评论和更多的www搜索之后,我同意这样一个观点,即Java脚本支持的web浏览器对处理SVG有更多的支持。所以我决定使用JS,并且只在别无选择的情况下使用python。不过,我将使用python库,比如(https://pypi.python.org/pypi/svgpathtools/1.0.1)。但到目前为止,我把所有的SVG特性发现都交给了java脚本

我认为这不可行。我在指导您使用Python绘制SVG的答案,但是在这之后,您得到的只是像素。在

在转换之间的任意点从SVG数据中提取位置信息很可能只在浏览器中实现。您可能有两个选择:使用headless浏览器和selenium/splinter在真正的浏览器中加载SVG数据并在其中运行javascript语句,或者让Python代码在Brython中运行,并在浏览器中运行所有内容。在Brython中,您应该能够使用Javascript调用作为SVG对象的方法,因为它公开给Brython本身。在

尝试使用Pygal。它用于创建交互式的.svg图片。在

相关问题 更多 >

    热门问题