mic*_*b91 5 javascript base64 canvas image todataurl
我使用此代码在Javascript中保存图像:
window.location.href = grid.toDataURL("image/png").replace("image/png", "image/octet-stream");
Run Code Online (Sandbox Code Playgroud)
代码有效,但保存的文件没有任何扩展名,我必须手动重命名.
我的问题是如何将扩展放在最后?
谢谢.
小智 6
toDataURL 生成数据-URI而不是文件名,因此在这种情况下扩展名不适用.
数据uri只是二进制内容的文本编码版本,某些浏览器可以将其读作文件 - 如果愿意,可以读取数据流.由于数据流没有任何文件名,因此无法附加文件名.
你可以通过这样设置一个锚标签来解决这个问题:
<a id="imageLink" href="data-uri-here" download="myFilename.png">
Click to download
</a>
Run Code Online (Sandbox Code Playgroud)
在JavaScript中,您可以将这些属性设置为动态:
imageLink.href = grid.toDataURL();
imageLink.download = 'myOtherFilename.png';
Run Code Online (Sandbox Code Playgroud)