Intégration Artisan avec NextPDF
nextpdf/artisan est une bibliothèque, pas un plugin de framework. Pour l’intégrer, installe le package, associe une ChromeRendererConfig à un document NextPDF, puis appelle writeHtmlChrome(). Cette page t’oriente dans le reste de la documentation Artisan.
Installation
Section intitulée « Installation »composer require nextpdf/artisanPour la matrice complète des prérequis et la dépendance externe à Chrome, voir /integrations/artisan/install/.
Démarrage et découverte
Section intitulée « Démarrage et découverte »Artisan ne fournit ni service provider, ni bundle, ni manifeste d’auto-découverte de framework. C’est une simple bibliothèque PSR-4 (NextPDF\Artisan\, NextPDF\Parser\) que tu consommes directement. Il n’y a donc rien à « découvrir ». Le point d’entrée est la méthode writeHtmlChrome(), que nextpdf/core expose sur Document dès que l’autoloader peut charger les classes du pont. Pour le modèle de découverte et de bootstrap, voir /integrations/artisan/boot-and-discovery/.
Liaisons du conteneur
Section intitulée « Liaisons du conteneur »Aucune intégration de conteneur n’est à publier. Dans les environnements sans conteneur d’injection de dépendances, EInvoiceServiceFactory fournit des méthodes de fabrique statiques (makeEmbedder, makeValidator, makeDefaultProfile, makeSchematronRunner). Ces méthodes renvoient des implémentations des contrats de facturation électronique Premium, ou null quand le niveau Premium n’est pas installé. Ce comportement reprend le retour null des packages wrapper de framework, afin que le code sans conteneur bénéficie d’une surface cohérente. Pour les détails et la justification, voir /integrations/artisan/boot-and-discovery/.
Points d’entrée de l’API publique
Section intitulée « Points d’entrée de l’API publique »| Point d’entrée | Où | Documenté dans |
|---|---|---|
Document::writeHtmlChrome() (méthode du cœur) | nextpdf/core | /integrations/artisan/quickstart/ |
Document::setChromeRendererConfig() (méthode du cœur) | nextpdf/core | /integrations/artisan/quickstart/ |
ChromeHtmlRenderer::render() | nextpdf/artisan | /integrations/artisan/production-usage/ |
ChromeRendererConfig / ::fromArray() | nextpdf/artisan | /integrations/artisan/configuration/ |
EInvoiceServiceFactory::make*() | nextpdf/artisan | /integrations/artisan/boot-and-discovery/ |
La signature de writeHtmlChrome() est (string $html, ?float $width = null, ?float $height = null): static, vérifiée par rapport à nextpdf/coresrc/Core/Concerns/HasTextOutput.php.
Test de fumée
Section intitulée « Test de fumée »<?php
declare(strict_types=1);
use NextPDF\Artisan\ChromeHtmlRenderer;use NextPDF\Artisan\ChromeRendererConfig;
require __DIR__ . '/vendor/autoload.php';
$renderer = new ChromeHtmlRenderer(new ChromeRendererConfig());assert($renderer->getHtmlSecurityPolicy()->getName() === 'default');echo "ARTISAN_WIRED\n";Cela vérifie que l’autoloading et les liaisons de contrats nextpdf/core se résolvent sans lancer Chrome (comportement validé par tests/Unit/Artisan/ChromeHtmlRendererTest.php::usesDefaultHtmlSecurityPolicyWhenNoneInjected). Pour le test de fumée de rendu de bout en bout qui sollicite Chrome, voir /integrations/artisan/chrome-renderer-setup/.
Où aller ensuite
Section intitulée « Où aller ensuite »- Génère ton premier document : /integrations/artisan/quickstart/
- Consulte toutes les options de configuration : /integrations/artisan/configuration/
- Provisionne Chrome / les conteneurs : /integrations/artisan/chrome-renderer-setup/
- Consulte le modèle de transport et d’isolation : /integrations/artisan/security-and-operations/
- Câblage de production et workers de lot : /integrations/artisan/production-usage/
- Diagnostique une panne : /integrations/artisan/troubleshooting/
- Comprends comment le package démarre : /integrations/artisan/boot-and-discovery/
Contexte commercial
Section intitulée « Contexte commercial »Le pont est pleinement fonctionnel en open source. Les niveaux Premium ajoutent l’embarquement de facturation électronique (Pro) et la validation (Enterprise) par-dessus le PDF rendu. Quand ils sont absents, EInvoiceServiceFactory retourne null, ce qui te permet d’écrire ton code d’intégration une seule fois et de l’exécuter avec ou sans Premium.
Voir aussi
Section intitulée « Voir aussi »- /integrations/artisan/overview/
- /integrations/artisan/install/
- /integrations/artisan/boot-and-discovery/
- /integrations/artisan/quickstart/