PDFKit je biblioteka Node.js koja programerima olakšava stvaranje i rad s PDF datotekama. Nudi jednostavan, ali učinkovit API za izradu PDF-ova i dodavanje različitih vrsta sadržaja u njih, poput teksta, slika i oblika.
Naučite kako koristiti PDF Kit za izradu PDF-ova u Node.js.
Postavljanje PDFkita
Moraš imati Node.js i npm (upravitelj paketa Node.js) instalirani na vašem računalu pratiti zajedno.
Provjerite imate li ove alate instalirane pokretanjem sljedećih terminalskih naredbi:
čvor -v
npm -v
Da biste počeli koristiti PDFKit u svom Node.js projektu, instalirajte ga pokretanjem sljedeće naredbe npm:
npm instalirajte pdfkit
Ova naredba će instalirati PDFKit i dodati ga u ovisnosti vašeg projekta.
Stvaranje PDF dokumenta pomoću PDFKita
Da biste izradili PDF dokument koristeći PDFKit, zahtijevajte pdfkit paket i fs (datotečni sustav) modul u vašoj datoteci skripte:
konst PDFDokument = zahtijevati('pdfkit');
konst fs = zahtijevati('fs');
Zatim stvorite novu instancu PDFDokument razreda. Ova klasa predstavlja PDF datoteku:
konst dok = novi PDFDokument();
Stvorena instanca je čitljiv tok, što znači da možete koristiti cijev() način za spremanje njegovog sadržaja u datoteku.
Da biste to učinili, procijedite doc instanca u tok za pisanje koji je stvorio fs.createWriteStream:
doc.pipe (fs.createWriteStream('MyPDFDoc.pdf'));
The createWriteStream metoda sprema sadržaj PDF datoteke na određeno mjesto u lokalnom datotečnom sustavu.
Gornji blok koda spremit će rezultirajuću PDF datoteku u vaš trenutni radni direktorij, s nazivom MojPDFDoc.pdf.
Važno je uvijek prekinuti stream nakon dodavanja sadržaja u PDF. To možete učiniti pomoću ove naredbe:
doc.end();
Sada pokrenite naredbu čvor čvor [naziv skripte] za izradu PDF datoteke MojPDFDoc.pdf u vašem trenutnom radnom imeniku.
Dodavanje teksta s PDFKitom
Prije nego što usmjerite dokument da biste ga spremili, možete izvršiti razne promjene. PDFKit olakšava dodavanje teksta u dokumente i uključuje mnoge opcije za prilagodbu prikaza izlaza.
Za dodavanje teksta u dokument jednostavno nazovite tekst() metodu i proslijedite tekst koji želite dodati kao argument:
doc.text("Kodiranje je jednostavno!")
Kako PDFKIT dodaje tekst u dokument, on prati trenutne X i Y pozicije tog teksta. Dakle, kad god pozovete tekstualnu metodu, PDFKit će dodati novi redak ispod prethodnog.
Međutim, pružanjem X i Y koordinata metodi teksta nakon samog teksta, možete promijeniti njegov položaj:
doc.text('Kodiranje je jednostavno!', 100, 100)
Za pomicanje gore ili dolje po redu, nazovite pomicati prema dolje ili pomakniGore metoda s brojem redaka za koje se tekst treba pomaknuti:
doc.moveDown(3);
doc.moveUp();
Prema zadanim postavkama, pozivanje bilo koje metode bez prosljeđivanja argumenta uzrokovat će njeno pomicanje za samo jedan redak.
PDFKit podržava svaki od 14 standardnih fontova definiranih PDF formatom. The PDFKit tekstualna dokumentacija ima potpuni popis ovih standardnih fontova.
Koristiti font() način za određivanje potrebnog fonta. Samo unesite odgovarajući naziv fonta kao niz:
doc.font('Times-Roman')
.tekst('Kodiranje je jednostavno!');
Također možete promijeniti veličinu fonta i boju teksta pomoću veličina fonta() i IspuniBoja() metode, odnosno.
Na primjer:
// Ovo mijenja boju teksta u crvenu i daje mu veličinu fonta 8
doc.fillColor('Crvena')
.veličina fonta(8)
.tekst('Kodiranje je jednostavno!');
Dodavanje slika pomoću PDFKita
Za sliku u svoj PDF dokument jednostavno proslijedite njen put do slika metoda na instanci dokumenta:
doc.image('put/do/slike.jpeg')
PDFKit vam omogućuje dodavanje slika u oba JPEG ili PNG format.
Prema zadanim postavkama, PDFKit će umetnuti sliku u izvornoj veličini. Možete promijeniti dimenzije slike pružanjem objekta koji sadrži parove ključ-vrijednost kao argument za slika() metoda. Možete odrediti širinu, visinu te vodoravno i okomito poravnanje.
Na primjer:
// Određivanje same širine
doc.image('put/do/slike.jpg', { širina: 300 });
// Određivanje i širine i visine
doc.image('put/do/slike.jpg', { širina: 300, visina:200 })
Dodavanje stranica s PDFKitom
Za dodavanje novih stranica u PDF dokument jednostavno pozovite addPage metoda na instanci dokumenta:
doc.addPage()
Za automatsko dodavanje sadržaja svaki put kada dodate novu stranicu, koristite stranicaDodana događaj na instanci dokumenta.
Na primjer:
doc.on('stranicaDodana', () => dok.tekst("Kodiranje je jednostavno!"));
PDFKit vam omogućuje određivanje dimenzija stranice prilikom izrade novog dokumenta ili dodavanja nove stranice postojećoj. Postoji nekoliko unaprijed definiranih veličina stranica koje PDFKit dokumentacija na papiru objašnjava.
Da biste koristili bilo koju od ovih unaprijed definiranih veličina stranice, proslijedite objekt u PDFDokument konstruktor ili addPage() metoda. Upotrijebite svojstvo veličine za navođenje niza koji je naziv veličine papira.
Na primjer:
// konstruktor
konst dok = novi PDFDokument({ veličina: 'A5' });
// funkcija addPage
doc.addPage({ veličina: 'A7' });
Prosljeđivanje ovog objekta opcija na PDFDokument konstruktor postavlja zadanu veličinu stranice za cijeli dokument. Zatim možete prebrisati ovu zadanu postavku prosljeđivanjem druge vrijednosti u addPage metoda.
Margine stranice možete postaviti prosljeđivanjem objekta u margine svojstvo prilikom dodavanja stranica.
The margine vlasništvo uzima objekt sa gore, dolje, lijevo, i pravo svojstva koja predstavljaju svaku marginu.
Na primjer:
// Dodajte različite margine sa svake strane
doc.addPage({
margine: {
vrh: 72,
dno: 72,
lijevo: 50,
pravo: 50
}
});
Ovaj kod postavlja gornju i donju marginu na 72 točke, a lijevu i desnu marginu na 50 točaka. Imajte na umu da je zadana margina za dokumente izrađene u PDFKit-u margina od 1 inča (72 točke) sa svih strana.
Da postavite sve gornje, donje, lijeve i desne margine na istu vrijednost, jednostavno proslijedite objekt s a margina vlasništvo na addPage metoda:
doc.addPage({ margina: 60 }) // dodajte marginu od 60 točaka na svaku stranu
Prednosti stvaranja PDF-ova s PDFKitom u Node.js
PDFKit vam omogućuje izradu standardnih i podržanih dokumenata iz vaših Node.js aplikacija. S PDFKitom možete jednostavno rukovati složenim dokumentima. Dodatno, može olakšati isporuku dokumenata korisnicima i učiniti ih jednostavnijim za dijeljenje i ispis.