我正在尝试使用我自己的一些文本(而不是html页面)生成pdf。我尝试过使用PDFKit。我能够生成pdf但是我无法在预览中打开它(它可能已损坏或使用预览无法识别的文件格式。)
以下是代码,
var fs = require('fs');
PDFDocument = require ('pdfkit');
var doc = new PDFDocument
// Embed a font, set the font size, and render some text
doc.text('Some text with an embedded font!', 100, 100)
// Add another page
doc.addPage()
.text('Here is some vector graphics...', 100, 100)
// Draw a triangle
doc.save()
.moveTo(100, 150)
.lineTo(100, 250)
.lineTo(200, 250)
.fill("#FF3300")
// Apply some transforms and render an SVG path with the 'even-odd' fill rule
doc.scale(0.6)
.translate(470, -380)
.path('M 250,75 L 323,301 131,161 369,161 177,301 z')
.fill('red', 'even-odd')
.restore()
// Add some text with annotations
doc.addPage()
.fillColor("blue")
.text('Here is a link!', 100, 100)
//.underline(100, 100, 160, 27, color: "#0000FF")
.link(100, 100, 160, 27, 'http://google.com/')
// Write the PDF file to disk
doc.pipe(fs.createWriteStream('out.pdf') );
doc.end
我可能会遗漏一些小事。 P
答案 0 :(得分:1)
这是我的一个愚蠢的错误。我应该使用doc.end()而不是使用doc.end,因此pdf没有正确生成。