Accueil Technologie
Comment créer des PDF dans Node.js en utilisant PDFKit

Comment créer des PDF dans Node.js en utilisant PDFKit

Comment créer des PDF dans Node.js en utilisant PDFKit

PDFKit est une bibliothèque Node.js qui permet aux développeurs de créer et de travailler facilement avec des fichiers PDF. Elle offre une API simple mais efficace pour produire des PDF et y ajouter différents types de contenu, tels que du texte, des images et des formes.


Apprenez à utiliser PDF Kit pour créer des PDF en Node.js.


Configuration de PDFkit

Vous devez avoir Node.js et npm (le gestionnaire de paquets de Node.js) installés sur votre machine pour pouvoir suivre le processus.

Assurez-vous que ces outils sont installés en exécutant les commandes de terminal suivantes :

 node -v
npm -v

Pour commencer à utiliser PDFKit dans votre projet Node.js, installez-le en exécutant la commande npm suivante :

 npm install pdfkit

Cette commande va installer PDFKit et l’ajouter aux dépendances de votre projet.

Création d’un document PDF avec PDFKit

Pour créer un document PDF à l’aide de PDFKit, il faut disposer de l’option pdfkit et le paquet fs (système de fichiers) dans votre fichier de script :

 const PDFDocument = require('pdfkit');
const fs = require('fs');

Ensuite, créez une nouvelle instance du module PDFDocument classe. Cette classe représente un fichier PDF :

 const doc = new PDFDocument();

L’instance créée est un flux lisible, ce qui signifie que vous pouvez utiliser la commande pipe() pour enregistrer son contenu dans un fichier.

Pour ce faire, il faut passer la méthode doc dans un flux inscriptible créé par fs.createWriteStream:

 doc.pipe(fs.createWriteStream('MyPDFDoc.pdf'));

Le site createWriteStream La méthode createWriteStream permet d’enregistrer le contenu d’un fichier PDF à un emplacement spécifié du système de fichiers local.

Le bloc de code ci-dessus enregistrera le fichier PDF résultant dans votre répertoire de travail actuel, sous le nom de MonDocPDF.pdf.

Il est important de toujours terminer le flux après avoir ajouté du contenu au PDF. Vous pouvez le faire en utilisant cette commande :

 doc.end();

Exécutez maintenant la commande node node [script name] pour créer le fichier PDF MonPDFDoc.pdf dans votre répertoire de travail actuel.

Ajouter du texte avec PDFKit

Avant de pipeauter votre document pour l’enregistrer, vous pouvez apporter diverses modifications. PDFKit simplifie l’ajout de texte aux documents et comprend de nombreuses options permettant de personnaliser l’affichage de la sortie.

Pour ajouter du texte au document, il suffit d’appeler la fonction text() et passez le texte que vous voulez ajouter comme argument :

 doc.text("Coding is Easy!")

Lorsque PDFKIT ajoute du texte au document, il garde la trace des positions X et Y actuelles de ce texte. Ainsi, chaque fois que vous appelez la méthode text, PDFKit ajoutera une nouvelle ligne sous la précédente.

Cependant, en fournissant des coordonnées X et Y à la méthode text après le texte lui-même, vous pouvez modifier sa position :

 doc.text('Coding is Easy!', 100, 100)

Pour monter ou descendre d’une ligne, appelez la méthode moveDown ou moveUp avec le nombre de lignes que le texte doit déplacer :

 doc.moveDown(3);

doc.moveUp();

Par défaut, l’appel de l’une ou l’autre méthode sans passer d’argument entraînera le déplacement du texte d’une seule ligne.

PDFKit supporte chacune des 14 polices standard définies par le format PDF. La documentation textuelle de PDFKit contient une liste complète de ces polices standard.

Utilisez l’option font() pour spécifier la police souhaitée. Il suffit de passer le nom de la police correspondante sous forme de chaîne :

 doc.font('Times-Roman')
   .text('Coding is Easy!');

Vous pouvez également modifier la taille de la police et la couleur du texte à l’aide de la méthode fontSize() et le fillColor() respectivement.

Par exemple :

 // This changes the text color to red and gives it a font size of 8
doc.fillColor('red')
   .fontSize(8)
   .text('Coding is Easy!');

Ajout d’images avec PDFKit

Pour ajouter une image à votre document PDF, il suffit de passer son chemin à la fonction image sur l’instance du document :

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

PDFKit vous permet d’ajouter des images au format JPEG ou PNG.

Par défaut, PDFKit insère l’image à sa taille native. Vous pouvez modifier les dimensions d’une image en fournissant un objet contenant des paires clé-valeur comme argument de la fonction image() méthode. Vous pouvez spécifier une largeur, une hauteur et un alignement horizontal et vertical.

Par exemple :

 // Specifying the width alone
doc.image('path/to/image.jpg', { width: 300 });

// Specifying both the width and height
doc.image('path/to/image.jpg', { width: 300, height:200 })

Ajout de pages avec PDFKit

Pour ajouter de nouvelles pages au document PDF, il suffit d’appeler la fonction addPage sur l’instance du document :

 doc.addPage()

Pour ajouter automatiquement du contenu à chaque fois que vous ajoutez une nouvelle page, utilisez la méthode pageAdded sur l’instance du document.

Par exemple :

 doc.on('pageAdded', () => doc.text("Coding is Easy!"));

PDFKit vous permet de spécifier les dimensions de la page lorsque vous créez un nouveau document ou ajoutez une nouvelle page à un document existant. Il existe plusieurs tailles de page prédéfinies que la documentation papier de PDFKit explique.

Pour utiliser l’une de ces tailles de page prédéfinies, passez un objet à l’une des méthodes suivantes PDFDocument ou le constructeur addPage() méthode. Utilisez la propriété size pour spécifier une chaîne de caractères qui est le nom du format du papier.

Par exemple :

 // constructor
const doc = new PDFDocument({ size: 'A5' });

// addPage function
doc.addPage({ size: 'A7' });

Le passage de cet objet d’options à la méthode PDFDocument Le constructeur définit la taille de page par défaut pour l’ensemble du document. Vous pouvez ensuite écraser cette valeur par défaut en passant une valeur différente à la fonction addPage méthode.

Vous pouvez définir les marges des pages en passant un objet à la méthode margins lors de l’ajout de pages.

Le site marges prend un objet avec haut, bas, gauche, et droite propriétés représentant chaque marge.

Par exemple :

 // Add different margins on each side
doc.addPage({
  margins: {
    top: 72,
    bottom: 72,
    left: 50,
    right: 50
  }
});

Ce code définit les marges supérieure et inférieure à 72 points, et les marges gauche et droite à 50 points. Notez que la marge par défaut des documents créés par PDFKit est une marge de 1 pouce (72 points) sur tous les côtés.

Pour définir toutes les marges supérieure, inférieure, gauche et droite à la même valeur, il suffit de passer un objet avec une balise marge à la propriété addPage méthode :

 doc.addPage({ margin: 60 }) // add a 60 point margin to each side

Les avantages de la création de PDF avec PDFKit en Node.js

PDFKit vous permet de produire des documents standard et pris en charge à partir de vos applications Node.js. Avec PDFKit, vous pouvez manipuler des documents complexes facilement. De plus, il peut faciliter la livraison de documents aux utilisateurs et les rendre plus simples à partager et à imprimer.

0 0 votes
Évaluation de l'article
S’abonner
Notification pour
guest
0 Commentaires
Le plus ancien
Le plus récent Le plus populaire
0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x