gpt4 book ai didi

javascript - Electron - 如何将 base64 dataUrl 保存到文件

转载 作者:太空宇宙 更新时间:2023-11-03 22:25:43 24 4
gpt4 key购买 nike

我正在处理一个现有的 Electron 项目(将 Web 应用程序转换为桌面应用程序),该项目的任务是将屏幕上的内容导出为 pdf/png/jpg。

情况如下:

  1. 桌面应用程序纯粹是客户端代码,它不连接到任何 API 或服务器(以防万一您建议使用 Nodejs 服务器端代码的解决方案)
  2. 我已经从canvas对象中获取了dataUrl(它是文件的base64字符串)

如何将该 dataUrl 保存到文件 (pdf/png/jpg) 中?

以下是我尝试过的一些方法:

  1. 旧的 window.location = dataUrl(什么也没发生)
  2. 在div内创建表单,action = dataUrl,然后提交表单

这两种方法都行不通!

非常感谢

最佳答案

要进行下载,MIME 类型为 data URI需要修改为"application/octet-stream"

var dataURL = "data:text/plain,123";
var form = document.createElement("form");
form.action = dataURL.replace(/:[\w-/]+(?=,)/, ":application/octet-stream");
form.method = "GET";
document.body.appendChild(form);
form.submit();

使用<a>元素为 download属性

var dataURL = "data:text/plain,123";
var a = document.createElement("a");
a.download = "file";
a.href = dataURL;
document.body.appendChild(a);
a.click();

另请参阅How to download a file without using <a> element with download attribute or a server?

关于javascript - Electron - 如何将 base64 dataUrl 保存到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46892163/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com