0

有没有办法通过设置文件的 mime 类型、标题、内容等在 JavaScript 中创建文件(例如:PDF)并在浏览器中显示并提供下载选项?

我在 javascript 中有一个 pdf 的 Base64 字节流,我正在使用它通过以下方式向用户显示 pdf:

document.location.href = 'data:application/pdf;base64,' +data;

它在新窗口中打开文件(它适用于除 IE 之外的所有浏览器,因为它有 url 限制),并且文件不能在所有浏览器中下载。IE 是测试我的应用程序的主要浏览器,所以这是一个大问题。

使用 Java 等后端技术创建文件并将其作为响应发送的选项被排除,因为我有一个 ABAP 后端,它只能给我字节流。许多人建议使用 jsPdf,但 jsPdf 从 javascript 创建内容(例如逐行设置信息和格式)并使用它。但由于我已经拥有我需要的所有数据和格式,我无法使用它。

这是我在网页中询问字节转换和显示 pdf 的问题,得到了回答,以获取更多信息: 如何将字符串形式的十六进制字节流转换为 javascript 中的实际字节流?

我已尽力寻找解决方案,但还没有找到。

4

1 回答 1

0

它可能会帮助您尝试这种方式将 pdf 放入 zip 文件中,为什么要压缩?因为进行 pdf 强制下载的唯一方法是将其放在 .zip 中,浏览器将识别如何处理它的 链接此处

此处示例使用 pdf 下载 zip 文件

于 2012-06-27T08:19:09.067 回答