Guide de mise à jour
TCPDF-Next est actuellement sur la ligne de version 1.x. Cette page explique la politique de versionnement et comment rester à jour.
Versionnement sémantique
TCPDF-Next suit le Versionnement sémantique 2.0.0 :
| Incrémentation de version | Signification | Mise à jour sûre ? |
|---|---|---|
| Patch (1.0.x) | Corrections de bugs, documentation, refactorisations internes | Oui — entièrement rétrocompatible |
| Mineure (1.x.0) | Nouvelles fonctionnalités, ajouts non-cassants | Oui — aucun changement de code existant nécessaire |
| Majeure (x.0.0) | Changements d'API cassants | Lisez d'abord le guide de migration |
Durant la série 1.x, l'API publique est considérée stable. Tout changement cassant sera réservé à la prochaine version majeure et sera accompagné d'un guide de migration détaillé.
Consulter le Changelog
Avant de mettre à jour, consultez le CHANGELOG sur GitHub. Chaque version liste :
- Added — nouvelles fonctionnalités et classes
- Changed — modifications du comportement existant
- Deprecated — API qui seront supprimées dans la prochaine version majeure
- Fixed — corrections de bugs
- Security — correctifs de vulnérabilité (mettez à jour immédiatement)
Mise à jour via Composer
# Mettre à jour vers la dernière version compatible dans votre contrainte
composer update yeeefang/tcpdf-next
# Ou épingler à une version spécifique
composer require yeeefang/tcpdf-next:^1.2Après la mise à jour, exécutez votre suite de tests pour vérifier que rien n'est cassé :
composer testMigration depuis d'autres bibliothèques
Si vous venez d'une autre bibliothèque PDF, les guides suivants vous aideront à mapper les concepts familiers à leurs équivalents TCPDF-Next :
Depuis TCPDF legacy
TCPDF-Next n'est pas un fork. C'est une réécriture complète depuis zéro avec une API entièrement nouvelle. Différences clés :
- Les constantes de configuration statiques sont remplacées par des enums typées et des objets valeur.
- L'état global est éliminé — chaque instance
Documentest autonome. - Toutes les classes sont
readonlyoù possible, avec un strictdeclare(strict_types=1). - PHP 8.5+ requis (voir Pourquoi PHP 8.5 ?).
Un aide-mémoire de migration côte à côte sera publié avec la version stable 1.0.
Depuis FPDF / FPDI
Les méthodes cell/multiCell/text/write ont intentionnellement des noms similaires, donc la courbe d'apprentissage est minimale. Les principales différences sont :
- Les paramètres nommés et les enums remplacent les flags entiers positionnels.
- La sortie utilise l'enum
OutputDestinationau lieu de chaînes d'un seul caractère. - La gestion des polices est traitée via
FontConfigplutôt que le placement manuel des fichiers.
Depuis Dompdf / wkhtmltopdf
Si vous êtes habitué à la conversion HTML-to-PDF, consultez le package Artisan, qui fournit un pipeline de rendu CSS3 complet au-dessus de TCPDF-Next Core. Pour la construction programmatique de PDF, l'approche pilotée par API décrite dans Utilisation de base sera plus performante et prévisible que la génération basée sur HTML.