Installer NextPDF compat-legacy
nextpdf/compat-legacy est une bibliothèque Composer. Elle nécessite PHP 8.4 ou version ultérieure et nextpdf/core ^3.0. Son installation ne modifie pas tes appels TCPDF existants — elle ajoute une classe vers laquelle tu peux basculer.
Prérequis
Section intitulée « Prérequis »| Dépendance | Version | Source de vérité |
|---|---|---|
| PHP | >=8.4 <9.0 | paquet composer.jsonrequire.php |
nextpdf/core | ^3.0 | paquet composer.jsonrequire |
| Composer | 2.7 ou version ultérieure | socle de la chaîne d’outils |
Le paquet déclare PHPStan niveau 10 sans baseline et fournit sa propre suite de tests. Il nécessite PHP 8.4 à l’exécution. Le moteur NextPDF, dans son ensemble, prend en charge PHP 8.1 à 8.4 via la ligne de backport, mais cet adaptateur fixe PHP 8.4 comme version minimale.
Installation
Section intitulée « Installation »Ajoute le paquet avec Composer :
composer require nextpdf/compat-legacy:^3.0Composer résout nextpdf/core ^3.0 comme dépendance transitive. Aucune autre extension d’exécution n’est requise pour l’ensemble des fonctionnalités de base.
Les métadonnées du paquet répondent aussi à l’ancien nom
nextpdf/compat-tcpdfvia une entréereplacede Composer. Les nouvelles installations doivent demandernextpdf/compat-legacy— c’est le nom canonique du paquet.
Vérifier l’installation
Section intitulée « Vérifier l’installation »Après l’installation, confirme que la classe de l’adaptateur se charge et que le rattachement au moteur se résout correctement. La vérification suivante produit un PDF d’une page entièrement en mémoire et vérifie l’en-tête PDF — c’est la même surface que celle couverte par le test du paquet tests/Unit/Compat/Tcpdf/TcpdfOutputTest.php.
<?php
declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
use NextPDF\Compat\Tcpdf\TCPDF;
$pdf = new TCPDF('P', 'mm', 'A4');$pdf->AddPage();$pdf->SetFont('helvetica', '', 12);$pdf->Cell(0, 10, 'compat-legacy install verified');
$bytes = $pdf->Output('verify.pdf', 'S');
if (! str_starts_with($bytes, '%PDF')) { fwrite(STDERR, "Install check failed: output is not a PDF.\n"); exit(1);}
echo "OK: adapter loaded, engine linked, PDF produced (" . strlen($bytes) . " bytes).\n";Exécute-le :
php examples/install-verify.phpLa sortie attendue est une seule ligne OK:. Le préfixe %PDF au début de la chaîne renvoyée confirme que l’adaptateur a construit un NextPDF\Core\Document, délégué les appels de page et de texte, puis sérialisé une sortie PDF 2.0 valide.
Vérifier la version du moteur
Section intitulée « Vérifier la version du moteur »L’adaptateur nécessite nextpdf/core ^3.0. Confirme la version résolue :
composer show nextpdf/core --format=jsonSi Composer a résolu une version du moteur en dehors de ^3.0, l’adaptateur échouera immédiatement à la construction au lieu de produire une sortie erronée. Épingle explicitement le moteur dans ton composer.json si ton projet en dépend aussi directement.
Facultatif : alias de classe globaux
Section intitulée « Facultatif : alias de classe globaux »Si ta base de code appelle new \TCPDF(...) dans l’espace de noms global et que tu ne peux pas encore modifier ces lignes use/require, le paquet peut enregistrer des alias globaux. Cette option doit être activée explicitement et elle est décrite dans /integrations/tcpdf-compat/boot-and-discovery/. Ne l’active pas si la bibliothèque TCPDF réelle est aussi installée dans le même processus — consulte /integrations/tcpdf-compat/troubleshooting/ pour connaître la règle d’évitement des conflits.
Ce que l’installation ne fait pas
Section intitulée « Ce que l’installation ne fait pas »- Elle ne modifie ni ne supprime une dépendance TCPDF existante. La suppression de
tecnickcom/tcpdfest une étape volontaire et ultérieure dans /integrations/tcpdf-compat/migration/. - Elle n’active pas les signatures numériques ni le PDF/A. Ils nécessitent une édition commerciale de NextPDF (consulte /integrations/tcpdf-compat/security-and-operations/).
- Elle ne modifie pas la cible de sortie du PDF. La sortie est toujours en PDF 2.0.
Étapes suivantes
Section intitulée « Étapes suivantes »- /integrations/tcpdf-compat/quickstart/ — produis ton premier vrai document.
- /integrations/tcpdf-compat/configuration/ — mode strict et configuration de l’adaptateur.
- /integrations/tcpdf-compat/migration/ — stratégie de migration fichier par fichier.
- /integrations/tcpdf-compat/method-coverage/ — le détail exact de ce que fait ici chaque méthode TCPDF.
Voir aussi
Section intitulée « Voir aussi »- Le
composer.jsondu paquet — les contraintes de dépendances qui font autorité docs/TCPDF_COVERAGE.md— la matrice de couverture qui fait autorité (dans le dépôt)