Qu'est-ce que PDFKit et pourquoi l'utiliser ?
PDFKit est une bibliothèque JavaScript (Node.js) puissante et flexible, conçue pour créer des documents PDF par programmation, « à la volée ». Elle permet aux développeurs de générer des fichiers PDF complexes et multipages avec un contenu riche : texte, images, tableaux, graphiques vectoriels, annotations et formulaires. Contrairement à de nombreuses autres bibliothèques, PDFKit fonctionne à bas niveau, offrant un contrôle total sur chaque aspect du document, des coordonnées de placement des éléments à l'incorporation de polices.
Principaux cas d'utilisation de PDFKit :
- Génération de rapports et de factures : Création de documents PDF dynamiques à partir de données issues d'une base de données ou d'une API.
- Création de bons de livraison et de reçus : Génération automatique de documents pour les sites e-commerce et les systèmes comptables.
- Réalisation de certificats et de diplômes : Génération de documents personnalisés avec des données uniques pour chaque destinataire.
- Export de données : Conversion de pages web, tableaux ou graphiques au format PDF pour impression ou archivage.
- Création de livres électroniques et de manuels : Mise en page programmatique de documents multipages avec table des matières et signets.
PDFKit est le choix des développeurs qui ont besoin de performance, de flexibilité et d'un contrôle total, sans dépendances externes (par exemple, sans avoir à installer LibreOffice ou wkhtmltopdf).
Installation de PDFKit
PDFKit est distribué via le gestionnaire de paquets npm. Pour l'installer, exécutez la commande suivante dans le terminal, à la racine de votre projet :
npm install pdfkit
Une fois installée, la bibliothèque est disponible pour l'importation dans votre code. Aucune dépendance supplémentaire n'est requise.
Démarrage rapide : création de votre premier document PDF
Créons un fichier PDF simple avec le texte « Bonjour, le monde ! ».
const PDFDocument = require('pdfkit');
const fs = require('fs');
// Crée un nouveau document PDF
const doc = new PDFDocument();
// Définit le flux de sortie pour le résultat
doc.pipe(fs.createWriteStream('bonjour_le_monde.pdf'));
// Ajoute du texte à la page
doc.fontSize(25)
.text('Bonjour, le monde !', 100, 100);
// Finalise le document et termine le flux
doc.end();
console.log('Le fichier PDF "bonjour_le_monde.pdf" a été créé avec succès !');
Après avoir exécuté ce code, un fichier bonjour_le_monde.pdf contenant le texte « Bonjour, le monde ! » apparaîtra dans le même dossier.
Méthodes et fonctions principales de PDFKit
PDFKit offre une API étendue. Voici 10 méthodes clés avec une description détaillée et des exemples.
1. text(text, x, y, options)
Description : Ajoute du texte au document. C'est la méthode principale pour travailler avec le texte. Elle prend en charge le retour à la ligne, l'alignement, les retraits et la stylisation.
Paramètres :
text(String) — Texte à ajouter.x(Number, optionnel) — Coordonnée X. Si non spécifiée, le texte continue à partir de la position actuelle.y(Number, optionnel) — Coordonnée Y. Si non spécifiée, le texte continue à partir de la position actuelle.options(Object, optionnel) — Objet de configuration :align(String) — Alignement :'left','center','right','justify'.indent(Number) — Retrait de la première ligne.paragraphGap(Number) — Espacement entre les paragraphes.lineGap(Number) — Interligne.width(Number) — Largeur du bloc de texte (pour le retour à la ligne).height(Number) — Hauteur du bloc de texte.underline(Boolean) — Soulignement.
Aussi dans la bibliothèque
Validation des données dans Node.js avec Joi : guide complet
Travail avec les dates en Swift (iOS/macOS) : bibliothèques et outils
Métriques Prometheus en Kotlin : intégration avec Micrometer et Ktor
Validation des données en Swift (iOS/macOS) : meilleures pratiques et outils