首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >下载带有filesaver.js和blob的pdf

下载带有filesaver.js和blob的pdf
EN

Stack Overflow用户
提问于 2015-11-03 16:24:22
回答 3查看 30.2K关注 0票数 6

我正在尝试用Filesaver.js下载一个文件。当我尝试使用csv来做这件事时,它工作得很好。但我现在需要下载一份pdf文件。

我该怎么做呢?我将Filesaver.js与一个blob对象一起使用,我的代码如下所示:

代码语言:javascript
复制
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什么样的数据类型。

EN

回答 3

Stack Overflow用户

发布于 2017-03-24 15:11:00

代码语言:javascript
复制
 var blob = new Blob([response.data], {type: "application/pdf;charset=utf-8"});
 var blob = new Blob([response.data], {type: "text/plain;charset=utf-8"});

这两个都可以,但标题应该是

代码语言:javascript
复制
{responseType:"arraybuffer"}
票数 3
EN

Stack Overflow用户

发布于 2016-02-19 07:25:48

当然,数据类型应该是application/pdf

内容应该在base64上,所以blob应该以

代码语言:javascript
复制
data:application/pdf;base64,

正如您在jspdf库源代码中看到的那样。

享受demo吧。

票数 1
EN

Stack Overflow用户

发布于 2016-02-19 08:11:53

PDF完全是另一种格式,而FileSaver的唯一任务就是保存文件。

您可以使用jsPDF库来做到这一点。这是你可以在你的案例中使用它的方式:

代码语言:javascript
复制
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"));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33494377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档