我简要总结一下我的问题:我正在调用一个返回pdf的API
“%PDF-1.4 %% 1 0 obj << /类型/目录/ PageLayout / OneColumn / Pages 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以便能够下载它。有谁知道我该怎么办?
PDF由一组非常重要的对象组成。如果您将其作为字符串接收并在其上使用标准字符串操作函数,例如找到并替换你很可能会破坏它。您必须按照PDF规范中规定的标准进行编辑,而不是违反语法。这是一种非常脆弱的方法,您需要使用PDF库来编辑PDF内容。