【发布时间】:2012-03-11 16:03:28
【问题描述】:
有没有办法将带有从外部网站加载的图像的画布保存到本地文件系统?
如果我尝试使用 toDataUrl(),它只会引发安全错误。在 Firefox 中,我可以通过右键单击将画布保存到文件中,但这在 Chrome 中是不可能的。
【问题讨论】:
-
向我们展示代码。原则上canvas可以导出为png/jpeg/bmp。
标签: javascript html canvas
有没有办法将带有从外部网站加载的图像的画布保存到本地文件系统?
如果我尝试使用 toDataUrl(),它只会引发安全错误。在 Firefox 中,我可以通过右键单击将画布保存到文件中,但这在 Chrome 中是不可能的。
【问题讨论】:
标签: javascript html canvas
不,出于安全原因,您不能使用toDataUrl()。
关于为什么会发生这种情况,您需要查看cors。
Here's a bit on why it should be this way.
这是 Firefox 中的一项功能,您可以右键单击另存为,因为它都是本地的。如果是toDataUrl(),那么网页也可能会尝试将画布数据发送到服务器,我们不希望这样。
右键单击另存为是 Opera 中的一项请求功能,可能有一天会出现在其他浏览器中,但我不会指望很快就会存在的功能。
【讨论】: