我需要在node.js中使用pdfkit生成pdf文件:
我有这段代码:
doc = new PDFDocument;
doc.pipe; fs.createWriteStream('output.pdf');
doc.fontSize(15);
doc.text('Generate PDF!');
doc.end();
它将创建一个pdf文件:' output.pdf' ,但每次打开文件时,文件都已损坏。它说:'无法打开文档文件类型纯文本文档(text / plain)不受支持' 。
然后我尝试了:
doc = new PDFDocument;
doc.pipe fs.createWriteStream('output.pdf');
doc.fontSize(15);
doc.text('Generate PDF!');
doc.end();
但是有一个错误说:
doc.pipe fs.createWriteStream('output.pdf');
^^
Syntax error: Unexpected Identifier
那么,在nodejs中生成pdf文件的正确方法是什么?特别是部分:
doc.pipe fs.createWriteStream
请帮帮我。提前谢谢!
答案 0 :(得分:9)
他们的大多数文档似乎都是用CoffeeScript编写的。就像CoffeeScript一样酷,这对我们这些写普通旧JS的人来说很痛苦。
因此,在文档中看到空格的任何地方,您都应该能够将该函数包装在括号中:
doc.pipe(fs.createWriteStream('output.pdf'));
答案 1 :(得分:1)
在此之前你必须先调用fs
模块。
在文件顶部添加:
var fs = require('fs');
答案 2 :(得分:1)
它对我有用:
doc.pipe(fs.createWriteStream('output.pdf'));
答案 3 :(得分:1)
尝试这段代码。
const fs = require('fs');
const PDFDocument = require('pdfkit');
let options = {
margins: 50
// you pdf settings here.
}
const doc = new PDFDocument(options);
let out = fs.createWriteStream('output.pdf')
doc.pipe(out);
doc.text('Hellow World.')
doc.end();
out.on('finish', function() {
// what you want to do with the file.
});