我正在尝试在获取dataURL()
之前,在画布上绘制图像,但是返回的数据似乎是空的。
当我在控制台中检查它时,我看到字符串中有很多A
:"data:image/png;base64,iVBO..随机字符... bQhfoAAAAAAAAAA...很多个A...AAAASUVORK5CYII="
当我尝试将画布附加到文档时,也没有绘制任何内容,并且控制台没有抛出任何错误。
问题出在哪里?
这是我的代码:
var img = new Image();
img.src = "http://somerandomWebsite/picture.png";
var canvas = document.createElement('canvas');
canvas.width = img.width;
canvas.height = img.height;
var context = canvas.getContext('2d');
context.drawImage(img, 0,0); // this doesn't seem to work
var dataURL = canvas.toDataURL(); // this will give me a lot of "A"
doSomething(dataURL);
在进行快速刷新时,图像被正确地绘制到画布上,但是我在控制台中收到了一条错误消息,dataURL
为空。
在Firefox中,出现以下消息:"SecurityError: 操作不安全。",
在Chrome中,出现以下消息:"Uncaught SecurityError: 无法对带有污染的画布执行'toDataURL'。",
而在IE中,我只看到了"SecurityError"。
这是什么意思?