Читатели като вас помагат в подкрепа на MUO. Когато правите покупка чрез връзки на нашия сайт, ние може да спечелим комисионна за партньор. Прочетете още.

PDFKit е Node.js библиотека, която улеснява разработчиците да създават и работят с PDF файлове. Той предлага лесен, но ефективен API за създаване на PDF файлове и добавяне на различни видове съдържание към тях, като текст, изображения и форми.

Научете как да използвате PDF Kit за създаване на PDF файлове в Node.js.

Настройване на PDFkit

Трябва да имаш Node.js и npm (мениджърът на пакети Node.js), инсталиран на вашата машина да следвам заедно.

Уверете се, че сте инсталирали тези инструменти, като изпълните следните терминални команди:

възел -v
npm -v

За да започнете да използвате PDFKit във вашия проект Node.js, инсталирайте го, като изпълните следната команда npm:

npm инсталирайте pdfkit

Тази команда ще инсталира PDFKit и ще го добави към зависимостите на вашия проект.

Създаване на PDF документ с PDFKit

За да създадете PDF документ с помощта на PDFKit, изисквайте pdfkit пакет и fs (файлова система) модул във вашия скрипт файл:

instagram viewer
конст PDFдокумент = изискват("pdfkit");
конст fs = изискват('fs');

След това създайте нов екземпляр на PDFдокумент клас. Този клас представлява PDF файл:

конст документ = нов PDFДокумент();

Създаденият екземпляр е четим поток, което означава, че можете да използвате тръба() метод за запазване на съдържанието му във файл.

За да направите това, тръба на док екземпляр в записваем поток, създаден от fs.createWriteStream:

doc.pipe (fs.createWriteStream(„MyPDFDoc.pdf“));

The createWriteStream записва съдържанието на PDF файл на определено място в локалната файлова система.

Горният кодов блок ще запази получения PDF файл в текущата ви работна директория с името MyPDFDoc.pdf.

Важно е винаги да прекратявате потока след добавяне на съдържание към PDF файла. Можете да направите това с помощта на тази команда:

doc.end();

Сега изпълнете командата node възел [име на скрипт] за създаване на PDF файл MyPDFDoc.pdf във вашата текуща работна директория.

Добавяне на текст с PDFKit

Преди да изпратите документа си, за да го запазите, можете да направите различни промени. PDFKit прави добавянето на текст към документи лесно и включва много опции за персонализиране на показването на изхода.

За да добавите текст към документа, просто се обадете на текст() и предайте текста, който искате да добавите като аргумент:

doc.text(„Кодирането е лесно!“)

Докато PDFKIT добавя текст към документа, той следи текущите X и Y позиции на този текст. Така че, когато извикате текстовия метод, PDFKit ще добави нов ред под предишния.

Въпреки това, като предоставите X и Y координати на текстовия метод след самия текст, можете да промените неговата позиция:

doc.text(„Кодирането е лесно!“, 100, 100)

За да се придвижите нагоре или надолу по ред, извикайте преместване надолу или движениеНагоре метод с броя редове, на които текстът трябва да се премести:

doc.moveDown(3);

doc.moveUp();

По подразбиране извикването на който и да е метод без предаване на аргумент ще го накара да се премести само с един ред.

PDFKit поддържа всеки от 14-те стандартни шрифта, дефинирани от PDF формата. The PDFKit текстова документация има пълен списък на тези стандартни шрифтове.

Използвай шрифт () метод за указване на необходимия шрифт. Просто предайте съответното име на шрифта като низ:

doc.font("Times-Roman")
.текст(„Кодирането е лесно!“);

Можете също да промените размера на шрифта и цвета на текста, като използвате размер на шрифта() и на fillColor() методи, респ.

Например:

// Това променя цвета на текста на червен и му дава размер на шрифта 8
doc.fillColor('червен')
.размер на шрифта(8)
.текст(„Кодирането е лесно!“);

Добавяне на изображения с PDFKit

Към изображение към вашия PDF документ просто предайте пътя му към изображение метод в екземпляра на документа:

doc.image('path/to/image.jpeg')

PDFKit ви позволява да добавяте изображения и в двете JPEG или PNG формат.

По подразбиране PDFKit ще вмъкне изображението в оригиналния му размер. Можете да промените размерите на изображение, като предоставите обект, съдържащ двойки ключ-стойност като аргумент на изображение() метод. Можете да зададете ширина, височина и хоризонтално и вертикално подравняване.

Например:

// Указване само на ширината
doc.image('path/to/image.jpg', { ширина: 300 });

// Указване както на ширината, така и на височината
doc.image('path/to/image.jpg', { ширина: 300, височина:200 })

Добавяне на страници с PDFKit

За да добавите нови страници към PDF документа, просто се обадете на addPage метод в екземпляра на документа:

doc.addPage()

За да добавяте автоматично съдържание всеки път, когато добавяте нова страница, използвайте страницаДобавена събитие в екземпляра на документа.

Например:

doc.on('pageAdded', () => doc.text(„Кодирането е лесно!“));

PDFKit ви позволява да зададете размерите на страницата, когато правите нов документ или добавяте нова страница към съществуваща. Има няколко предварително зададени размера на страницата, които Хартиена документация на PDFKit обяснява.

За да използвате който и да е от тези предварително зададени размери на страницата, предайте обект към или към PDFдокумент конструктор или addPage() метод. Използвайте свойството размер, за да посочите низ, който е името на размера на хартията.

Например:

// конструктор
конст документ = нов PDFдокумент({ размер: "A5" });

// addPage функция
doc.addPage({ размер: "A7" });

Предавайки този обект с опции към PDFдокумент конструкторът задава размера на страницата по подразбиране за целия документ. След това можете да презапишете това по подразбиране, като подадете различна стойност на addPage метод.

Можете да зададете полета на страницата, като подадете обект към маржове собственост при добавяне на страници.

The маржове собственост отнема обект със горе, долу, ляво, и точно свойства, представляващи всяко поле.

Например:

// Добавете различни полета от всяка страна
doc.addPage({
полета: {
Горна част: 72,
отдолу: 72,
наляво: 50,
дясно: 50
}
});

Този код задава горното и долното поле на 72 точки, а лявото и дясното поле на 50 точки. Имайте предвид, че полето по подразбиране за документи, създадени от PDFKit, е поле от 1 инч (72 точки) от всички страни.

За да зададете една и съща стойност за всички горни, долни, ляви и десни полета, просто предайте обект с a марж собственост на addPage метод:

doc.addPage({ марж: 60 }) // добавете поле от 60 точки към всяка страна

Предимствата на създаването на PDF файлове с PDFKit в Node.js

PDFKit ви позволява да създавате стандартни и поддържани документи от вашите Node.js приложения. С PDFKit можете лесно да обработвате сложни документи. Освен това може да улесни доставката на документи до потребителите и да ги направи по-лесни за споделяне и отпечатване.