我有一个类似的SVG字符串
<svg ...> <image id="Lager_1" data-name="Lager 1" width="2" height="3" xlink:href="data:image/png;base..." y="0" x="0" x_rel="0" y_rel="0" width_rel="0.2" height_rel="0.2" obj_id="0f83a8ca168e" comp_id="2c46c64a13c0"/> ...
我添加了一些额外的属性,如x_rel
、y_rel
、obj_id
和comp_id
。然而,当我尝试使用FabricJSloadSVGFromString
将这个SVG加载到画布上时,如下所示:
fabric.loadSVGFromString(svg, (objects, options) => {
objects.forEach(obj => {
console.log(obj)
canvas.add(obj)
})
然后像这样输出画布的内容console.log(canvas)
或console.log(canvas.toObject())
我看到我的自定义属性已经丢失,不再包含,有解决方案吗?
您需要添加使用groupSVGElements
函数传入的选项变量:
...
var obj = fabric.util.groupSVGElements(objects, options);
...
canvas.add(obj);