0

我正在尝试使用我自己的一些文本(而不是 html 页面)生成 pdf。我尝试使用 PDFKit。我能够生成 pdf,但无法在 Preview 中打开它(它可能已损坏或使用了 Preview 无法识别的文件格式。)

下面是代码,

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

我可能会遗漏一些小东西。磷

4

1 回答 1

2

这是我的一个愚蠢的错误。我应该使用 doc.end() 而不是使用 doc.end ,因此无法正确生成 pdf。

于 2016-04-29T18:03:07.010 回答