fabric.js - 克隆的路径组不从 JSON 呈现
Posted
技术标签:
【中文标题】fabric.js - 克隆的路径组不从 JSON 呈现【英文标题】:fabric.js - Cloned path groups not rendering from JSON 【发布时间】:2017-06-04 01:45:13 【问题描述】:我正在加载 SVG,转换为路径组,克隆多次,然后保存为 JSON。从 JSON 恢复时,路径组不会出现在画布上,尽管结构对象在那里(选择时显示边界框),但路径组具有 [0] 的数组。知道为什么会这样吗?在下面的 gif 中,我使用了撤消/重做方法,我撤消了,当我重做时,路径组消失了,但结构对象仍然存在。请注意:我已经在下面发布了关键代码,我无法发布我的完整源代码。我希望有人可以根据提供的信息弄清楚这里发生了什么。
// Load SVG and convert to path group.
fabric.loadSVGFromURL(url, function(objects, options)
group = fabric.util.groupSVGElements(objects, options);
canvas.add(group);
canvas.renderAll();
);
// Clone group and add to canvas
group.clone(function(c: any)
c.add(group);
);
// Save canvas to JSON
var obj = canvas.toJSON();
// Clear canvas and load JSON
canvas.clear();
canvas.loadFromDatalessJSON(obj);
canvas.renderAll();
【问题讨论】:
【参考方案1】:问题在于canvas.toJSON();
JSON.stringify(canvas);
工作正常。
【讨论】:
以上是关于fabric.js - 克隆的路径组不从 JSON 呈现的主要内容,如果未能解决你的问题,请参考以下文章
Fabric.js 对象在 DOM 加载时从 JSON 呈现时无法更改填充颜色