我有一个svg文件,我想在这个存在的文件中插入其他svg对象。
import svgwrite
dwg = svgwrite.Drawing('model.svg')
square = dwg.add(dwg.rect(20,20),(80,80), fill='blue'))
dwg.save()它返回一个新文件,该形状忽略了我以前的文件。我怎么能写这个?
谢谢
发布于 2014-05-05 22:10:55
我找到了一个模块
import svgutils.transform as st
template = st.fromfile('template.svg')
second_svg = st.fromfile('second.svg')
template.append(second_svg)
template.save('merged.svg')我希望这也适用于你。
发布于 2014-04-17 17:55:55
svgwrite库不支持这一点--它的目的是创建新的SVG文件,而不是使用现有的文件。查看 class,您可以看到,当您保存绘图时,它会打开文件进行写入和截断;因此,以前在该文件中的任何内容都会丢失:
def save(self):
""" Write the XML string to **filename**. """
fileobj = io.open(self.filename, mode='w', encoding='utf-8')
self.write(fileobj)
fileobj.close()https://stackoverflow.com/questions/23139709
复制相似问题