Canvas drawImage使用数据URL

Fir*_*ate 17 javascript html5 canvas

我将从脚本开始:


  function saveInstance() {
   _savedInstance = document.getElementById('canvasID').toDataURL();
  }
  function restoreInstance() {
   ctx.drawImage(_savedInstance,0,0);
  }
Run Code Online (Sandbox Code Playgroud)

目的是保存画布的实例并在以后重新应用它[类似于ctx.save()如何保存样式和转换].

但是,我收到了错误,指出不兼容的类型(未捕获的错误:TYPE_MISMATCH_ERR:DOM例外17).是否有任何canvas方法允许我使用数据URL字符串重新绘制实例?

**如果有更好的方法来实现我的保存/恢复想法,那也非常感激.

-大副

pix*_*der 18

是的,您可以使用其源创建一个图像元素,_savedInstance然后将其绘制到画布上.

var img = new Image();
img.src = _savedInstance;
ctx.drawImage(img,0,0);
Run Code Online (Sandbox Code Playgroud)