gpt4 book ai didi

javascript - Fabric.js 行可选属性未保存在 Canvas 的 JSON 中

转载 作者:搜寻专家 更新时间:2023-11-01 04:36:50 24 4
gpt4 key购买 nike

我有一个 Canvas ,我正在使用 fabric.js 的画线方法绘制网格线。我在绘制时将这些线的选择属性定义为 false,这按预期工作正常。现在,当我对 Canvas 进行字符串化并检索 JSON 输出时,我注意到除了选择属性之外,其余属性都被提取出来了。我需要做什么才能使 JSON 中的选择属性保持不变?我正在使用 fabric.js-1.4.10

最佳答案

您可以使用以下代码,当您调用 toJSON() 方法时,您将拥有所有其他属性:

                var obj = fabric.util.groupSVGElements(objects, options).set({
top: 0,
left: 0
});
obj.toJSON = (function (toJSON) {
return function () {
return fabric.util.object.extend(toJSON.call(this), {
customProperties: this.customProperties
});
};
})(obj.toJSON);

实际上,正如@Abhishek 在评论中所说,fabric 的 toJSON() 方法或用于导出 svg 的任何其他方法将仅导出 fabric 对象的默认属性。如果您想在导出列表中获取自定义添加的属性,而不是像我在上面的代码中那样重写 toJSON 方法,那么在您使用 toJSON() 方法之后,您将在导出的 JSON 中拥有自定义属性。

关于javascript - Fabric.js 行可选属性未保存在 Canvas 的 JSON 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25403894/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com