电子 – 如何将base64 dataUrl保存到文件

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

情况如下:

  1. 桌面应用程序纯粹是客户端代码,它不会连接到任何API或服务器(以防您使用Nodejs服务器端代码提出解决scheme)
  2. 我已经从canvas对象中获得了dataUrl(这是一个base64的文件string)

如何将dataUrl保存为文件(pdf / png / jpg)?

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

  1. 好老的window.location = dataUrl(没有任何反应)
  2. 在div中创build一个表单,action = dataUrl,然后提交表单

两种方式都不行!

非常感谢你

为了进行下载,需要将data URI的MIMEtypes改变为"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();