Android手机上的canvas.toDataURL和drawimage问题

时间:2012-03-11 23:20:58

标签: android html5 canvas

我想将图片从画布保存到我的Android手机。我的代码如下

 var canvas = document.getElementById('canvas');
 var context = canvas.getContext("2d");
 context.drawImage(video, 0, 0, 320, 320);
 var strURI=canvas.toDataURL('image/png');
 document.location.href=strURI.replace('image/png', 'image/octet-stream');

我的笔记本电脑上的代码工作正常,我可以用它下载图像。但是,当我在Android手机上试用时,没有任何反应。

今天,我尝试在Android手机上调试我的代码。我发现我的应用程序在var strURI=canvas.toDataURL('image/png')时崩溃了。这就是我无法在手机上下载图像的原因。有谁知道如何解决这个问题?非常感谢你。

1 个答案:

答案 0 :(得分:0)

嗯,它在我的Galaxy Nexus上运行得很好。我刚刚使用我所做的代码来回答另一个问题:

http://jsfiddle.net/7QMqX/2/

该代码是否适合您?

如果它没有创建带有图像的弹出窗口,那么你有一个特定于Android的问题,可能是版本特定的。

如果它适合您,那么您的特定图像可能存在跨域问题,并且它会在您的手机上引发安全例外,因为图像位置与页面的原点不同。