Fabric JS loadSVGFromString包含已使用的已定义自定义属性



我有一个类似的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_rely_relobj_idcomp_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);

最新更新