Python的SVG解析器(Python SVG parser)

2019-08-20 02:57发布

我想用蟒提取坐标/路径来解析的SVG文件(I相信这是在“路径” ID列出,特别是d =“...” />)。 这个数据将最终被用于驱动2轴CNC。

我搜索的SO和谷歌能够返回这样的路径的字符串,所以我可以进一步分析它的库,但无济于事。 难道这样的库是否存在?

Answer 1:

忽略转换,你可以从像这样的SVG解压路径字符串:

from xml.dom import minidom

doc = minidom.parse(svg_file)  # parseString also exists
path_strings = [path.getAttribute('d') for path
                in doc.getElementsByTagName('path')]
doc.unlink()


Answer 2:

获取d-string可以在一两个用做svgpathtools 。

from svgpathtools import svg2paths
paths, attributes = svg2paths('some_svg_file.svg')

路径是svgpathtools路径对象(只包含曲线信息,没有颜色,款式等)的列表。 属性是对应字典对象存储每个路径的属性的列表。

,比方说,打印出的d-字符串,然后...

for k, v in enumerate(attributes):
    print v['d']  # print d-string of k-th path in SVG


文章来源: Python SVG parser