我尝试使用Filesaver.js
下载文件。当我尝试用csv做这个时,它工作正常。但我现在需要下载pdf。
我该怎么做?
我使用Filesaver.js
和blob对象,我的代码看起来像这样:
var filename = "myfile.csv";
var s = "my csv text content";
var blob = new Blob([s], {type "text/csv;charset=utf-8"});
var filesaver = saveAs(blob,filename);
当我想下载pdf时,我想知道应该将哪种数据类型传递给blob onject。
答案 0 :(得分:1)
数据类型当然应该是application/pdf
。
内容应该在base64
上,因此blob应该以
data:application/pdf;base64,
正如您在jspdf库源代码中所看到的那样。
享受demo。
答案 1 :(得分:1)
PDF完全是另一种格式,FileSaver的唯一任务就是保存文件。
您可以使用jsPDF库来执行此操作。这就是你如何在你的情况下使用它:
var filename = "myfile.csv";
var s = "my csv text content";
var pdf = new jsPDF();
pdf.text(10, 10, s);
pdf.save(filename.replace(".csv", ".pdf"));
答案 2 :(得分:0)
var blob = new Blob([response.data], {type: "application/pdf;charset=utf-8"});
var blob = new Blob([response.data], {type: "text/plain;charset=utf-8"});
两者都可以,但标题应为
{responseType:"arraybuffer"}