使用Python解析SVG并保存指定内容
我们需要安装一个名为svgpathtools
的库来解析SVG文件,在命令行中输入以下命令进行安装:
pip install svgpathtools
接下来,我们将使用svgpathtools
库中的parse_svg
函数来读取SVG文件,以下是一个简单的示例:
from svgpathtools import parse_svgdef read_svg(file_path): return parse_svg(file_path)svg_data = read_svg('example.svg')
现在我们已经成功读取了SVG文件,接下来我们需要提取其中指定的内容,假设我们要提取所有的矩形(rect)元素,我们可以使用以下代码:
from svgpathtools import Rect, PathElementdef extract_rectangles(svg_data): rectangles = [] for element in svg_data: if isinstance(element, PathElement) and element.tag == 'rect': rectangles.append(Rect(*element.attrib['x'], *element.attrib['y'], *element.attrib['width'], *element.attrib['height'])) return rectanglesrectangles = extract_rectangles(svg_data)
我们需要将提取到的指定内容保存到一个新的SVG文件中,我们可以使用svgpathtools
库中的save_svg
函数来实现这个功能,以下是一个简单的示例:
from svgpathtools import save_svgdef save_rectangles(rectangles, output_file): with open(output_file, 'w') as f: for rect in rectangles: f.write(f'')save_rectangles(rectangles, 'output.svg')
现在,我们已经成功地从原始SVG文件中提取了指定的矩形元素,并将它们保存到了一个新的SVG文件中。
```