2013-06-03 3 views
3

Спасибо за отличную работу! Я пытаюсь выполнить отмену/повтор. Я использую loadFromJSON (...), чтобы перестроить холст из состояний холста, которые я сохранил в массиве. В принципе, моя идея - уничтожить существующий холст и перестроить холст. Вот мой код.Уничтожающий холст

// TODO: How to destroy existing canvas?? 

    canvas = new fabric.Canvas('canvas', { 
     containerClass : 'myCanvasContainer',   
    }); 

    canvas.loadFromJSON(history[historyStep]);  

Этот код добавляет еще один холст поверх существующего холста. Однако мне нужен способ уничтожить холст и создать новый холст из моих данных JSON (заменив старый холст новым).

Просьба сообщить, возможно ли это или любые другие варианты, которые у меня есть.

Thanks & С уважением, Surya.

ответ

0

Попробуйте это:

context.clearRect(0,0,canvas.width, canvas.height); 
+0

Хотя это _does_ очистить холст, он не создает новые. Хотя это может быть то, что ищет Ганеш. –

0

очень поздно вопрос, но я только что нашел 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();