İçeriğe geç

NextPDF Artisan entegrasyonu

nextpdf/artisan bir kitaplıktır; çerçeve eklentisi değildir. Entegre etmek için paketi kurun, bir NextPDF belgesine ChromeRendererConfig ekleyin ve writeHtmlChrome() çağrısı yapın. Artisan dokümantasyonunun geri kalanına ulaşmak için bu sayfadan yararlanın.

Terminal window
composer require nextpdf/artisan

Eksiksiz gereksinim matrisi ve harici Chrome bağımlılığı için bkz. /integrations/artisan/install/.

Artisan hiçbir hizmet sağlayıcı, paket veya çerçeve otomatik keşif bildirimi içermez. Doğrudan kullanılan, yalın bir PHP Standard Recommendation 4 (PSR-4) kitaplığıdır (NextPDF\Artisan\, NextPDF\Parser\). Keşfedilecek hiçbir şey yoktur. Giriş noktası writeHtmlChrome() yöntemidir; köprü sınıfları otomatik yüklenebilir hale geldikten sonra nextpdf/core bu yöntemi Document üzerinde sunar. Keşif ve önyükleme modeli için bkz. /integrations/artisan/boot-and-discovery/.

Yayımlanacak herhangi bir konteyner entegrasyonu yoktur. Bağımlılık enjeksiyonu konteyneri bulunmayan ortamlarda EInvoiceServiceFactory, statik fabrika yöntemleri sağlar (makeEmbedder, makeValidator, makeDefaultProfile, makeSchematronRunner). Bu yöntemler, Premium e-fatura sözleşmesi uygulamalarını döndürür; Premium katmanı kurulu değilse null döndürür. Bu davranış, çerçeve sarmalayıcı paketleriyle aynı null döndürme davranışını izler; böylece konteyner içermeyen kod da aynı arabirimi kullanır. Ayrıntılar ve gerekçe için bkz. /integrations/artisan/boot-and-discovery/.

Giriş noktasıNeredeBelgelendiği yer
Document::writeHtmlChrome() (çekirdek yöntem)nextpdf/core/integrations/artisan/quickstart/
Document::setChromeRendererConfig() (çekirdek yöntem)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/

İlgili writeHtmlChrome() yönteminin imzası (string $html, ?float $width = null, ?float $height = null): static şeklindedir; bu, nextpdf/coresrc/Core/Concerns/HasTextOutput.php dosyasına karşı doğrulanmıştır.

<?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";

Bu test, otomatik yüklemenin ve nextpdf/core sözleşme bağlamalarının Chrome başlatılmadan çözümlendiğini kanıtlar (davranış tests/Unit/Artisan/ChromeHtmlRendererTest.php::usesDefaultHtmlSecurityPolicyWhenNoneInjected tarafından doğrulanır). Chrome’u çalıştıran uçtan uca işleme smoke testi için bkz. /integrations/artisan/chrome-renderer-setup/.

  • İlk belgenizi işleyin: /integrations/artisan/quickstart/
  • Tüm yapılandırma seçenekleri: /integrations/artisan/configuration/
  • Chrome / konteynerleri sağlayın: /integrations/artisan/chrome-renderer-setup/
  • Taşıma ve yalıtım modeli: /integrations/artisan/security-and-operations/
  • Üretim bağlantıları ve toplu işleme worker’ları: /integrations/artisan/production-usage/
  • Bir hatayı teşhis edin: /integrations/artisan/troubleshooting/
  • Paketin nasıl önyüklendiği: /integrations/artisan/boot-and-discovery/

Köprü, tamamen işlevsel açık kaynaklı bir yazılımdır. Premium katmanları, işlenmiş Portable Document Format (PDF) dosyasına e-fatura gömme (Pro) ve doğrulama (Enterprise) ekler. Bu katmanlar mevcut olmadığında EInvoiceServiceFactory, null değerine geri döner; böylece entegrasyon kodunu bir kez yazıp Premium katmanıyla ya da Premium olmadan çalıştırabilirsiniz.

  • /integrations/artisan/overview/
  • /integrations/artisan/install/
  • /integrations/artisan/boot-and-discovery/
  • /integrations/artisan/quickstart/