我正在尝试完成撤消/重做。我使用的是loadFromJSON(...)从我存储在数组中的画布状态重新构建画布。基本上,我的想法是销毁现有的画布并重新构建画布。这是我的代码。
// TODO: How to destroy existing canvas?
canvas = new fabric.Canvas('canvas', {
containerClass : 'myCanvasContainer',
});
canvas.loadFromJSON(history[historyStep]); 此代码在现有画布之上添加另一个画布。但是,我需要一种方法来销毁画布,并从我的JSON数据构建全新的画布(用新画布替换旧画布)。
请告诉我有没有可能,或者我还有其他选择。
发布于 2016-10-31 23:22:22
我相信canvas.dispose()就是你要找的。
点击此处阅读更多信息:http://fabricjs.com/docs/fabric.StaticCanvas.html#dispose
发布于 2013-06-03 18:37:52
您可以使用canvas.clear()函数。
发布于 2016-08-04 21:06:27
这个问题来得太晚了,但我刚刚找到了this article,它可以为你工作。这就是它的公正之处:
var _Canvas = null;
[...]
$('#canvasid').hide();
if (_Canvas)
_Canvas.clear();
_Canvas = null;
$('#canvasid').siblings('.upper-canvas').remove();
$('#canvasid').parent('.canvas-container').before($('#canvasid'));
$('.canvas-container').remove();https://stackoverflow.com/questions/16890412
复制相似问题