我喜欢在画布上绘制图像。 到目前为止我所做的是我已经将Canvas中的imagedata插入到数据库中。 问题在于,当我尝试创建数据的图像并在Canvas上将其绘制回来时,它不会绘制相同的图像,只有一些像素可能会被绘制,而其余像素只是空白,就像没有任何东西应该在那里绘制。
我正在获取这样的图像数据:
var CanvasData = document.getElementById('canvas');
CanvasData = CanvasData.toDataURL("image/png");
将图像重新绘制在Canvas上(数据存储在数据库中):
var result = xmlhttp.responseText;
var CanvasDraw = document.getElementById('canvas');
var ctxChange = CanvasDraw.getContext('2d');
imagedata = new Image();
imagedata.src = result;
imagedata.onload = function(){
ctxChange.drawImage(imagedata, 0, 0);
}
以下是一个指向imagedata示例的pastebin链接:http://pastebin.com/XGmV49k9 结果是从AJAX调用返回的数据,与数据库中存储的数据相同。
感谢您的帮助。
答案 0 :(得分:2)
这行中似乎有错误:
imagedata.src = result;
应该是:
imagedata.src = CanvasData;