我使用pugixml来读取svg文档。
在我读完svg后,我有一个像这样的pugixml :: document(简化):
<svg>
<rect .../>
<text ...> text </text>
<line .../>
</svg
阅读后我想将一些子节点包装成一个g元素,如下所示:
<svg>
<g ...>
<rect .../>
<text ...> text </text>
</g>
<line .../>
</svg>
我怎样才能做到这一点,最好是通过修改pugixml :: document并不创建新文件?
答案 0 :(得分:1)
这样的事情应该有效:
pugi::xml_node g = svg.prepend_node("g");
g.append_copy(svg.child("rect"));
svg.remove_child("rect");
g.append_copy(svg.child("text"));
svg.remove_child("text");