如何将一串PDF代码转换为Blob?

时间:2019-04-27 15:47:33

标签: javascript pdf blob data-conversion

我简要总结一下我的问题: 我正在调用返回

之类的pdf的API

“%PDF-1.4 %% 1 0 obj << /类型/目录/ PageLayout / OneColumn / 页面2 0 R / PageMode / UseNone .........“

目前,我以字符串格式接收它,以便能够进行更改,到目前为止效果很好,但是进行更改后,我想将字符串转换为blob以下载pdf。在执行此操作时,我遇到了问题,转换为blob的文本字符串无法生成正确的pdf,或者实际上打开后的pdf是白色,而实际上它应该具有数据。

The code I'm using now is the following:

response.text().then((content) => {
   //...TODO: Modify pdf
   var blob = new Blob([content], { type: "application/pdf" });
   saveAs(blob, "invoice.pdf");
}).catch(error => {
   console.log(error);
});

The pdf is downloaded but if I open it it is empty.

我希望能够修改pdf字符串并将其转换回blob,以便能够下载它。 有谁知道我该怎么做?

1 个答案:

答案 0 :(得分:0)

PDF由一组平凡的对象组成。如果您以字符串形式接收它并在其上使用标准的字符串操作功能,例如查找并替换您很可能会破坏它。您将必须按照PDF规范中列出的标准进行编辑,并且不得违反语法。这是一种非常脆弱的方法,您需要使用PDF库来编辑PDF内容。