Integrasi NextPDF Artisan
Sekilas pandang
Bagian berjudul “Sekilas pandang”nextpdf/artisan adalah pustaka, bukan plugin framework. Untuk mengintegrasikannya, pasang pustaka ini, lampirkan ChromeRendererConfig ke dokumen NextPDF, lalu panggil writeHtmlChrome(). Gunakan halaman ini sebagai titik awal untuk menemukan dokumentasi Artisan lainnya.
Pemasangan
Bagian berjudul “Pemasangan”composer require nextpdf/artisanUntuk matriks persyaratan lengkap serta dependensi eksternal Chrome, lihat /integrations/artisan/install/.
Boot dan penemuan
Bagian berjudul “Boot dan penemuan”Artisan tidak menyertakan service provider, bundle, atau manifes auto-discovery framework apa pun. Pustaka ini adalah pustaka PHP Standard Recommendation 4 (PSR-4) biasa (NextPDF\Artisan\, NextPDF\Parser\) yang digunakan secara langsung. Tidak ada yang perlu ditemukan. Titik masuknya adalah metode writeHtmlChrome(), yang diekspos oleh nextpdf/core pada Document setelah kelas-kelas bridge dapat dimuat melalui autoload. Untuk model penemuan dan bootstrap, lihat /integrations/artisan/boot-and-discovery/.
Binding container
Bagian berjudul “Binding container”Tidak ada integrasi container yang perlu dipublikasikan. Di lingkungan tanpa container dependency injection, EInvoiceServiceFactory menyediakan metode factory statis (makeEmbedder, makeValidator, makeDefaultProfile, makeSchematronRunner). Metode-metode ini mengembalikan implementasi kontrak e-invoice Premium, atau null ketika tier Premium tidak terpasang. Perilaku ini mencerminkan pengembalian null pada paket wrapper framework, sehingga kode tanpa container tetap menggunakan antarmuka yang sama. Untuk detail dan alasannya, lihat /integrations/artisan/boot-and-discovery/.
Titik masuk API publik
Bagian berjudul “Titik masuk API publik”| Titik masuk | Lokasi | Didokumentasikan di |
|---|---|---|
Document::writeHtmlChrome() (metode core) | nextpdf/core | /integrations/artisan/quickstart/ |
Document::setChromeRendererConfig() (metode 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/ |
Tanda tangan writeHtmlChrome() adalah (string $html, ?float $width = null, ?float $height = null): static, sesuai hasil verifikasi terhadap nextpdf/coresrc/Core/Concerns/HasTextOutput.php.
Smoke test
Bagian berjudul “Smoke test”<?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";Smoke test ini membuktikan bahwa autoloading dan binding kontrak nextpdf/core berhasil diselesaikan tanpa menjalankan Chrome (perilaku ini diuji oleh tests/Unit/Artisan/ChromeHtmlRendererTest.php::usesDefaultHtmlSecurityPolicyWhenNoneInjected). Untuk smoke test render end-to-end yang menjalankan Chrome, lihat /integrations/artisan/chrome-renderer-setup/.
Langkah selanjutnya
Bagian berjudul “Langkah selanjutnya”- Render dokumen pertama Anda: /integrations/artisan/quickstart/
- Semua opsi konfigurasi: /integrations/artisan/configuration/
- Menyiapkan Chrome / container: /integrations/artisan/chrome-renderer-setup/
- Model transport dan isolasi: /integrations/artisan/security-and-operations/
- Integrasi produksi dan worker batch: /integrations/artisan/production-usage/
- Diagnosis kegagalan: /integrations/artisan/troubleshooting/
- Cara paket melakukan boot: /integrations/artisan/boot-and-discovery/
Konteks komersial
Bagian berjudul “Konteks komersial”Bridge ini adalah perangkat lunak open-source yang berfungsi penuh. Tier Premium menambahkan penyematan e-invoice (Pro) dan validasi (Enterprise) di atas berkas Portable Document Format (PDF) hasil render. Ketika tier tersebut tidak ada, EInvoiceServiceFactory mengembalikan null, sehingga Anda dapat menulis kode integrasi sekali saja dan menjalankannya dengan atau tanpa Premium.
Lihat juga
Bagian berjudul “Lihat juga”- /integrations/artisan/overview/
- /integrations/artisan/install/
- /integrations/artisan/boot-and-discovery/
- /integrations/artisan/quickstart/