-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpdf_test.js
46 lines (37 loc) · 1.15 KB
/
pdf_test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import PDFDocument from 'pdfkit'
import fs from 'fs'
import addParagraph from './api/paragraph'
// Create a document
const doc = new PDFDocument
// Pipe its output somewhere, like to a file or HTTP response
// See below for browser usage
doc.pipe(fs.createWriteStream('output.pdf'))
addParagraph(doc, 'Homo homini docus.')
// Embed a font, set the font size, and render some text
// doc.font('fonts/PalatinoBold.ttf')
// .fontSize(25)
// .text('Some text with an embedded font!', 100, 100)
// Add another page
doc.addPage()
.fontSize(25)
.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/')
// Finalize PDF file
doc.end()