我想将 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')
时崩溃。这就是为什么我无法在手机上下载图像的原因。任何人都知道如何解决这个问题?非常感谢。
最佳答案
嗯,它在我的 Galaxy Nexus 上运行良好。我只是使用我在这里回答另一个问题的代码:
这个代码对你有用吗?
如果它没有创建带有图像的弹出窗口,那么您遇到了特定于 android 的问题,可能是特定于版本的问题。
如果它对你有用,那么你的特定图像可能存在跨源问题,并且它会在你的手机上引发安全异常,因为图像位置与页面的来源不同。
关于android - Android 手机上的 canvas.toDataURL 和 drawimage 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9659916/