javascript - 将 Canvas 中的图像保存到本地存储

标签 javascript html html5-canvas local-storage

我正在尝试将 Canvas 上绘制的圆圈保存到本地存储,但我根本无法让它工作。

到目前为止,这是我在 JS 中的保存代码。

function saveCanvas() {
var canvas = document.getElementById("imgCanvas"),
    doomslayer = canvas.toDataURL();

 if (typeof (localStorage) !== "undefined") {

    localStorage.setItem('imgCanvas', doomslayer);
 } else {
    document.getElementById("save").innerHTML.dataURL = "Local Storage not supported";
   }
}

function loadCanvas() {

var image = localStorage.getItem('imgCanvas');

document.getElementById('imgCanvas').src = image;
}

JSFiddle link

现在终于可以使用了! Working fiddle :)

最佳答案

您必须将保存的数据url加载到图像中,然后使用drawImage将其加载到 Canvas 上

IE 限制:localStorage 只能在所提供的页面上使用(本地执行不起作用!)。

// save to localStorage

localStorage.setItem("imgCanvas",canvas.toDataURL());

// reload from localStorage

var img=new Image();
img.onload=function(){
    context.drawImage(img,0,0);
}
img.src=localStorage.getItem("imgCanvas");

关于javascript - 将 Canvas 中的图像保存到本地存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20603222/

相关文章:

javascript - 将 JavaScript 中的图像输出到刽子手游戏中

html - 可以将元素强制到隐式网格的最后一行吗?

Javascript 函数 draw() 形状到图像

javascript - 如何使用 Fabric.js 将图像上传到 Canvas ?

javascript - 如何使用 HTML5 Canvas 将圆弧转换为直线?

javascript - 等待回调函数

javascript - 我该如何摆脱 "be the first of your friend to like this"?

允许字母、数字、句点、连字符、下划线和空格的 javascript 正则表达式

javascript - 新行在可编辑的 div 中不起作用

html - 背景图片左对齐