Pro edisi
Barcode
Sekilas
Bagian berjudul “Sekilas”NextPDF Pro menambahkan simbologi barcode 2D khusus dan rantai-pasok di atas simbologi linear dan QR pada edisi sumber terbuka. Setiap simbologi merender langsung ke sebuah permukaan halaman PDF sebagai content stream deterministik.
Ketersediaan & lisensi
Bagian berjudul “Ketersediaan & lisensi”Kapabilitas ini dikapalkan dalam NextPDF Pro (nextpdf/pro) dan diaktifkan dengan envelope lisensi tingkat-Pro. Sebuah deployment tanpa entitlement tersebut tidak memuat kelas-kelas kapabilitas ini. Bandingkan edisi dan dapatkan lisensi.
Pemasangan
Bagian berjudul “Pemasangan”composer require nextpdf/pro:^3Encoder Pro meregistrasi dirinya melalui registry encoder barcode standar. Aplikasi yang membangun registry-nya sendiri dapat meregistrasi ulang encoder Pro secara eksplisit melalui service provider yang diterbitkan.
Ikhtisar konseptual
Bagian berjudul “Ikhtisar konseptual”Edisi sumber terbuka mencakup simbologi linear dan QR sehari-hari. NextPDF Pro memperluas registry yang sama dengan simbologi khusus untuk penggunaan ritel, logistik, pos, dan industri densitas-tinggi:
- Micro QR Code — varian QR ringkas untuk real estate label kecil.
- DotCode — simbologi dot-matrix yang dirancang untuk penandaan industri kecepatan-tinggi.
- Han Xin Code — simbologi 2D dengan kapasitas teks CJK set-besar native, sesuai ISO/IEC 20830.
- JabCode — simbologi 2D polikrom dengan cascading multi-simbol.
- rMQR — varian Micro QR persegi panjang untuk label sempit dan lebar.
- GS1 DataBar — keluarga simbologi ritel dan kupon GS1.
- GS1 Composite (CC-C) — sebuah base 1D tertaut ditambah komponen ekstensi 2D PDF417 densitas-tinggi yang membawa data GS1 Application Identifier. (Encoding extended-component 2D CC-A dan CC-B tidak didukung pada rilis ini; lihat matriks dukungan.)
Setiap encoder menghasilkan objek data barcode yang dikonversi page renderer menjadi operator konten PDF. Encoding bersifat deterministik: input dan opsi yang sama selalu menghasilkan pola modul yang sama, yang menjaga dokumen yang ditandatangani dan diarsipkan tetap reproducible.
Referensi mendalam barcode membawa matriks dukungan per-simbologi dengan bukti. Untuk setiap simbologi dan varian, matriks mencatat salah satu dari tiga keadaan: sebuah fixture konformansi dalam-repositori melatihnya (Verified), permukaan implementasi menegaskannya tanpa fixture khusus (Claimed), atau ia berada di luar cakupan (Not supported). NextPDF melaporkan matriks dengan jujur: sebuah varian yang mengapalkan encoder tetapi tidak memiliki fixture reference-trace tetap Claimed dengan catatan backfill alih-alih dilebih-lebihkan.
Mengapa cara kerjanya begini
Bagian berjudul “Mengapa cara kerjanya begini”Setiap encoder Pro adalah fungsi murni: payload dan opsi yang sama selalu menghasilkan matriks modul yang sama, tanpa state tersembunyi atau keacakan berbasis-seed. Determinisme itu adalah keputusan yang menjadi tumpuan. Ia memungkinkan sebuah barcode melakukan round-trip melalui dokumen yang ditandatangani atau diarsipkan tanpa mengganggu byte stream, sehingga sebuah re-render tidak pernah membatalkan sebuah tanda tangan. Ia juga membuat konformansi dapat diaudit: matriks dukungan menyematkan setiap simbologi ke sebuah reference trace tersimpan, diperiksa bit demi bit terhadap sebuah golden file. Memperluas BarcodeEncoderRegistry Core alih-alih mem-fork-nya menjaga jaminan-jaminan ini identik di seluruh edisi terbuka dan Pro.
Latar desain: Byte yang sama setiap saat: PDF yang reproducible.
Permukaan API
Bagian berjudul “Permukaan API”composer require nextpdf/pro:^3Permukaan publik barcode Pro terdiri dari:
- Sebuah titik masuk service-provider statik yang meregistrasi encoder 2D Pro ke dalam sebuah registry encoder barcode (
MicroQR,DotCode,HanXin,JabCode,RMQR,GS1DataBar, dan key komponen GS1 Composite CC-Cgs1-composite-cc-c). Encoding extended-component 2D GS1 Composite CC-A dan CC-B tidak didukung pada rilis ini dan tidak diregistrasi. - Sebuah parser GS1 Application Identifier yang menerima baik string AI yang dapat dibaca manusia maupun URI GS1 Digital Link dan menghasilkan urutan byte ter-encode untuk carrier GS1-128, QR Code, dan Data Matrix.
- Sebuah validator rantai-pasok GS1 yang memeriksa check digit, struktur AI, logika tanggal, dan kombinasi AI wajib industry-profile.
Tabel signature-metode yang dihasilkan secara penuh dirender pada referensi mendalam barcode.
Contoh kode — Mulai cepat
Bagian berjudul “Contoh kode — Mulai cepat”use NextPDF\Barcode\BarcodeEncoderRegistry;use NextPDF\Pro\Barcode\BarcodeProServiceProvider;
$registry = new BarcodeEncoderRegistry();BarcodeProServiceProvider::register($registry);// $registry now resolves the Pro specialty symbologies.Contoh kode — Produksi
Bagian berjudul “Contoh kode — Produksi”use NextPDF\Pro\Barcode\Gs1\Gs1Validator;use NextPDF\Pro\Barcode\Gs1\Gs1SupplyChainProfile;
$result = Gs1Validator::validate( '(01)09521234543213(17)260131(10)ABC123', Gs1SupplyChainProfile::NONE,);
if (! $result->isValid) { // Surface findings to your observability pipeline before encoding. foreach ($result->findings as $finding) { $logger->warning('GS1 validation finding', [ 'rule' => $finding->ruleId, 'detail' => $finding->message, ]); }}Kasus tepi & jebakan
Bagian berjudul “Kasus tepi & jebakan”- Registry default mem-prebind entri encoder Pro secara lazy dan menggerbangi mereka melalui capability registry. Sebuah panggilan
BarcodeProServiceProvider::register()eksplisit adalah fallback yang didukung ketika sebuah aplikasi menyusun registry-nya sendiri tanpa default. - Re-registrasi bersifat idempoten: panggilan
register()kedua mengganti binding pertama alih-alih memunculkan error. - Cakupan varian GS1 DataBar bersifat parsial secara desain. Omnidirectional, Truncated, Stacked, Stacked Omnidirectional, dan Limited bersifat reference-verified; Expanded dan Expanded Stacked berada di luar cakupan pada rilis ini. Lihat matriks dukungan.
- rMQR menerima setiap versi ISO 23941 melalui suite konformansi Annex-validated. Metadata scope-tracking yang mendahului perluasan size-range belakangan mungkin meremehkan ini; matriks dukungan mencatat realitas code-verified.
Performa
Bagian berjudul “Performa”Biaya encoding berskala dengan panjang payload dan ukuran simbol target. Setiap simbologi menata simbolnya dalam satu lintasan tanpa reflow. Cascade multi-simbol JabCode berskala dengan jumlah simbol (1–61). Encoding menahan matriks modul di memori; versi simbol terpilih terbesar membatasi biayanya.
Catatan keamanan
Bagian berjudul “Catatan keamanan”Encoder barcode tidak mengeksekusi konten payload; mereka meng-encode-nya sebagai data. Validasi GS1 menolak struktur AI yang cacat dan check digit yang tidak valid sebelum encoding, yang mencegah string rantai-pasok yang cacat menghasilkan simbol yang scannable tetapi non-konforman. Encoder tidak mencatat payload sendiri; aplikasi harus membersihkan payload sensitif dari log mereka sendiri.
Konformansi
Bagian berjudul “Konformansi”Setiap simbologi mengikuti standar terbitan yang relevan (ISO/IEC 24724 untuk GS1 DataBar, ISO/IEC 24723 untuk GS1 Composite, ISO/IEC 23941 untuk rMQR, ISO/IEC 18004 Annex untuk Micro QR, ISO/IEC 20830 untuk Han Xin Code, ISO/IEC 23634 untuk JabCode, USPS-B-3200 untuk simbologi pos). Pemetaan konformansi tingkat-klausa dengan pengenal kutipan dirender pada referensi mendalam barcode.
Batas publikasi
Bagian berjudul “Batas publikasi”Halaman ini mendokumentasikan hanya perilaku yang dapat diamati secara eksternal dan permukaan API publik yang didukung. Path namespace internal, kelas helper, tabel mekanisme, nama file runbook, dan prefiks tiket berada di luar cakupan.