下载使用 Chrome PDF 查看器打开的 PDF 时设置默认文件名

Mik*_*iki 1 html pdf iframe google-chrome jspdf

我的 angular 应用程序有一个呈现 PDF 的 iframe:

<iframe ng-src="{{PCtrl.docSrc}}" type="application/pdf" ...></iframe>
Run Code Online (Sandbox Code Playgroud)

docSrc 生成为 BASE64 编码的字符串,类似于:

"data:application/pdf;base64,JVBERi0xLjMKMyA..."
Run Code Online (Sandbox Code Playgroud)

Chrome 可以很好地呈现嵌入的 PDF。可以单击下载来下载 PDF,用户将看到一个“另存为”对话框。Chrome PDF 查看器给出的默认文件名是“download.pdf”,我该如何更改?

Sel*_*thi 5

window.onload = () => {
  let blob = new Blob(["file"], {
    type: "text/plain"
  });
  let url = URL.createObjectURL(blob);
  let a = document.createElement("a");
  a.href = url;
  a.download = "file.txt";
  document.body.appendChild(a);
  console.log(url);
  a.click();
}
Run Code Online (Sandbox Code Playgroud)

可能这会帮助你

  • 谢谢塞尔瓦。您将文件附加到支持 **download** 属性的 `&lt;a&gt;` 元素。不幸的是,_iframe_ 不支持它。 (2认同)