2

ユニオンドローを編集しようとしています

キャンバスの状態を保存したいので、新しい訪問者が入ってくると、最後に描かれたものの状態が表示されます。現在、キャンバスは新しい訪問者のためにすべてをクリアします。

キャンバスの状態を保存するためにユニオンドローと何をする必要がありますか?

このようなことで可能ですか?はいの場合、どのように?

var states = [];
function saveState(ctx){
  var c = document.createElement('canvas');
  c.width  = ctx.canvas.width;
  c.height = ctx.canvas.height;
  c.getContext('2d').drawImage(ctx.canvas,0,0);
  states.push(c);
  return c;
}

function restoreState(ctx,idx){
  var off = idx==null ? states.pop() : states[idx];
  ctx.drawImage(off,0,0);
}
4

0 に答える 0