【问题标题】:Generate PDF file of html in Node.js在 Node.js 中生成 html 的 PDF 文件
【发布时间】:2016-11-14 04:26:11
【问题描述】:

我有一个客户详细信息表单页面,客户将在其中输入他/她的详细信息并单击提交按钮。 点击后,数据正​​在使用 node.js 在 mongodb 中提交。现在我想在点击提交按钮的同时生成输入数据的PDF文件。

任何人都可以建议我单击按钮时如何生成 PDF 文件。

【问题讨论】:

  • 使用命令'window.print()'
  • 我不是要求打印页面...我想一键生成pdf文件。

标签: node.js mongodb pdf-generation


【解决方案1】:

如果您想制作自己的格式,可以使用PDFKit,如果您只需要将 HTML 转换为 PDF,则可以使用 node-html-pdf

【讨论】:

  • 请检查我的代码,它不工作 router.post('/create', function(req, res, next){ var PDFDocument=require('pdfkit'); var doc=new PDFDocument( ); var path=require('./public/pdf'); var filename=req.body.filename; var content=req.body.content; doc.y=320; doc.text(content, 100, 100) ; doc.write(path.resolve('.')+'/PDF/'+filename+'.pdf'); res.download(path.resolve('.')+'/PDF/'+filename+'.pdf '); doc.end(); });
  • 您是否尝试从 GitHub 运行示例? require('./public/pdf'); 是什么?使用createWriteStream 而不是write。请记住,这是异步操作,您必须等待它完成。此外,您应该在使用res.download 将其发送给客户之前完成 PDF
  • 现在我正在写这个-var PDF = require('pdfkit'); var fs = require('fs'); var text = 'Candidate Name:'+req.body.filename; doc = new PDF(); doc.pipe(fs.createWriteStream('filee.pdf')); doc.text(text, 20, 20); doc.end(); pdf 正在成功创建。现在的问题是,当我一次又一次地创建 pdf 时,它会被以前的 PDF 覆盖。有什么解决办法吗?
  • 用不同的名字写文件。而且我认为将它们写入特定目录会更好
猜你喜欢
  • 2014-09-29
  • 2017-10-15
  • 2010-12-11
  • 2012-01-22
  • 1970-01-01
  • 2013-06-10
  • 2017-12-12
  • 1970-01-01
  • 2014-03-04
相关资源
最近更新 更多