Integração do NextPDF Artisan
Visão geral
Seção intitulada “Visão geral”nextpdf/artisan é uma biblioteca, não um plugin de framework. Para integrá-la, instale-a, associe um ChromeRendererConfig a um documento NextPDF e chame writeHtmlChrome(). Use esta página para encontrar o restante da documentação do Artisan.
Instalação
Seção intitulada “Instalação”composer require nextpdf/artisanPara ver a matriz completa de requisitos e a dependência externa do Chrome, consulte /integrations/artisan/install/.
Inicialização e descoberta
Seção intitulada “Inicialização e descoberta”O Artisan não fornece service provider, bundle nem manifesto de descoberta automática de framework. É uma biblioteca PHP Standard Recommendation 4 (PSR-4) simples (NextPDF\Artisan\, NextPDF\Parser\) que você consome diretamente. Não há etapa de descoberta. O ponto de entrada é o método writeHtmlChrome(), que o nextpdf/core expõe em Document depois que as classes da ponte estão disponíveis no autoload. Para o modelo de descoberta e bootstrap, consulte /integrations/artisan/boot-and-discovery/.
Bindings de container
Seção intitulada “Bindings de container”Não há integração de container para publicar. Em ambientes sem um container de injeção de dependências, EInvoiceServiceFactory fornece métodos de fábrica estáticos (makeEmbedder, makeValidator, makeDefaultProfile, makeSchematronRunner). Esses métodos retornam implementações de contrato de e-invoice do Premium ou null quando o tier Premium não está instalado. Isso reproduz o comportamento de retorno null dos pacotes wrapper de framework, de modo que o código sem um container use a mesma superfície. Para detalhes e justificativa, consulte /integrations/artisan/boot-and-discovery/.
Pontos de entrada da API pública
Seção intitulada “Pontos de entrada da API pública”| Ponto de entrada | Onde | Documentado em |
|---|---|---|
Document::writeHtmlChrome() (método do core) | nextpdf/core | /integrations/artisan/quickstart/ |
Document::setChromeRendererConfig() (método do core) | 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/ |
A assinatura de writeHtmlChrome() é (string $html, ?float $width = null, ?float $height = null): static, conforme verificado em nextpdf/coresrc/Core/Concerns/HasTextOutput.php.
Teste de fumaça
Seção intitulada “Teste de fumaça”<?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";Isso confirma que o autoload e os bindings de contrato do nextpdf/core são resolvidos sem iniciar o Chrome (comportamento assegurado por tests/Unit/Artisan/ChromeHtmlRendererTest.php::usesDefaultHtmlSecurityPolicyWhenNoneInjected). Para o teste de fumaça de renderização de ponta a ponta que executa o Chrome, consulte /integrations/artisan/chrome-renderer-setup/.
Próximos passos
Seção intitulada “Próximos passos”- Renderize seu primeiro documento: /integrations/artisan/quickstart/
- Todas as opções de configuração: /integrations/artisan/configuration/
- Provisione o Chrome / containers: /integrations/artisan/chrome-renderer-setup/
- Modelo de transporte e isolamento: /integrations/artisan/security-and-operations/
- Configuração de produção e workers em lote: /integrations/artisan/production-usage/
- Diagnostique uma falha: /integrations/artisan/troubleshooting/
- Como o pacote é inicializado: /integrations/artisan/boot-and-discovery/
Contexto comercial
Seção intitulada “Contexto comercial”A ponte é um software de código aberto totalmente funcional. Os tiers Premium adicionam incorporação de e-invoice (Pro) e validação (Enterprise) sobre o arquivo Portable Document Format (PDF) renderizado. Quando eles estão ausentes, EInvoiceServiceFactory faz fallback para null, de modo que você pode escrever o código de integração uma vez e executá-lo com ou sem o Premium.
Veja também
Seção intitulada “Veja também”- /integrations/artisan/overview/
- /integrations/artisan/install/
- /integrations/artisan/boot-and-discovery/
- /integrations/artisan/quickstart/