Pro editie
Barcode
In één oogopslag
Sectie met titel “In één oogopslag”NextPDF Pro voegt gespecialiseerde 2D- en supply-chain-barcodesymbologieën toe bovenop de lineaire en QR-symbologieën in de opensource-editie. Elke symbologie rendert rechtstreeks in een PDF-pagina-oppervlak als een deterministische content stream.
Beschikbaarheid en licenties
Sectie met titel “Beschikbaarheid en licenties”Deze functionaliteit wordt geleverd in NextPDF Pro (nextpdf/pro) en activeert met een licentie-envelop van het Pro-niveau. Een deployment zonder die entitlement laadt de klassen van de functionaliteit niet. Vergelijk edities en vraag een licentie aan.
Installeren
Sectie met titel “Installeren”composer require nextpdf/pro:^3De Pro-encoders registreren zichzelf via het standaard barcode-encoder-register. Applicaties die hun eigen register bouwen, kunnen de Pro-encoders expliciet opnieuw registreren via de gepubliceerde service provider.
Conceptueel overzicht
Sectie met titel “Conceptueel overzicht”De opensource-editie dekt de alledaagse lineaire en QR-symbologieën. NextPDF Pro breidt hetzelfde register uit met gespecialiseerde symbologieën voor retail, logistiek, post en hoge-dichtheid industrieel gebruik:
- Micro QR Code — de compacte QR-variant voor kleine label-ruimte.
- DotCode — een dot-matrix-symbologie ontworpen voor hoge-snelheid industriële markering.
- Han Xin Code — een 2D-symbologie met native grote-set CJK-tekstcapaciteit, conform ISO/IEC 20830.
- JabCode — een polychrome 2D-symbologie met multi-symbool-cascadering.
- rMQR — de rechthoekige Micro QR-variant voor smalle, brede labels.
- GS1 DataBar — de GS1 retail- en couponsymbologiefamilie.
- GS1 Composite (CC-C) — een gekoppelde 1D-basis plus een hoge-dichtheid PDF417 2D-extensiecomponent die GS1 Application Identifier-gegevens draagt. (CC-A- en CC-B-2D-extended-component-encoding wordt in deze release niet ondersteund; zie de support-matrix.)
Elke encoder produceert een barcode-data-object dat de pagina-renderer converteert naar PDF-content-operatoren. Encoding is deterministisch: dezelfde invoer en opties produceren altijd hetzelfde modulepatroon, wat ondertekende en gearchiveerde documenten reproduceerbaar houdt.
De diepe barcode-referentie draagt een support-matrix per symbologie met bewijs. Voor elke symbologie en variant registreert de matrix een van drie statussen: een in-repository conformance fixture oefent die (Verified), het implementatieoppervlak beweert die zonder toegewijde fixture (Claimed), of het valt buiten de scope (Not supported). NextPDF rapporteert de matrix eerlijk: een variant die een encoder levert maar een reference-trace fixture mist, blijft Claimed met een backfill-notitie in plaats van overdreven.
Waarom het zo werkt
Sectie met titel “Waarom het zo werkt”Elke Pro-encoder is een pure functie: dezelfde payload en opties produceren altijd dezelfde modulematrix, zonder verborgen state of geseede randomness. Dat determinisme is de dragende beslissing. Het laat een barcode een round-trip maken door een ondertekend of gearchiveerd document zonder de byte stream te verstoren, zodat een re-render nooit een handtekening ongeldig maakt. Het maakt conformiteit ook auditeerbaar: de support-matrix pint elke symbologie vast aan een opgeslagen reference trace, bit-voor-bit gecontroleerd tegen een golden file. Het uitbreiden van het Core BarcodeEncoderRegistry in plaats van het te forken houdt deze garanties identiek over de open en Pro-edities.
Ontwerpachtergrond: Elke keer dezelfde bytes: reproduceerbare PDF’s.
API-oppervlak
Sectie met titel “API-oppervlak”composer require nextpdf/pro:^3Het publieke Pro-barcode-oppervlak bestaat uit:
- Een statisch service-provider-toegangspunt dat de Pro-2D-encoders registreert in een barcode-encoder-register (
MicroQR,DotCode,HanXin,JabCode,RMQR,GS1DataBaren de GS1 Composite CC-C-componentsleutelgs1-composite-cc-c). GS1 Composite CC-A- en CC-B-2D-extended-component-encoding wordt in deze release niet ondersteund en wordt niet geregistreerd. - Een GS1 Application Identifier-parser die zowel human-readable AI-strings als GS1 Digital Link-URI’s accepteert en gecodeerde byte-sequenties produceert voor GS1-128-, QR Code- en Data Matrix-carriers.
- Een GS1 supply-chain-validator die check digits, AI-structuur, datumlogica en industrie-profiel verplichte AI-combinaties controleert.
De volledige gegenereerde method-signature-tabel rendert in de diepe barcode-referentie.
Codevoorbeeld — Snelstart
Sectie met titel “Codevoorbeeld — Snelstart”use NextPDF\Barcode\BarcodeEncoderRegistry;use NextPDF\Pro\Barcode\BarcodeProServiceProvider;
$registry = new BarcodeEncoderRegistry();BarcodeProServiceProvider::register($registry);// $registry now resolves the Pro specialty symbologies.Codevoorbeeld — Productie
Sectie met titel “Codevoorbeeld — Productie”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, ]); }}Randgevallen en valkuilen
Sectie met titel “Randgevallen en valkuilen”- Het standaardregister pre-bindt de Pro-encoder-vermeldingen lazy en gate’t ze via het capability-register. Een expliciete
BarcodeProServiceProvider::register()-aanroep is de ondersteunde terugval wanneer een applicatie haar eigen register zonder standaarden samenstelt. - Herregistratie is idempotent: een tweede
register()-aanroep vervangt de eerste binding in plaats van te werpen. - GS1 DataBar-variantdekking is van ontwerp gedeeltelijk. Omnidirectional, Truncated, Stacked, Stacked Omnidirectional en Limited zijn reference-verified; Expanded en Expanded Stacked vallen buiten de scope in deze release. Zie de support-matrix.
- rMQR accepteert elke ISO 23941-versie via de Annex-gevalideerde conformance-suite. Scope-tracking-metadata die voorafgaat aan de latere groottebereik-uitbreiding kan dit onderschatten; de support-matrix registreert de code-verified realiteit.
Prestaties
Sectie met titel “Prestaties”De encodingkosten schalen met payloadlengte en doel-symboolgrootte. Elke symbologie legt zijn symbool in één enkele pass uit zonder reflow. JabCode multi-symbool-cascades schalen met het symboolaantal (1–61). Encoding houdt de modulematrix in het geheugen; de grootste geselecteerde symboolversie begrenst de kosten.
Beveiligingsnotities
Sectie met titel “Beveiligingsnotities”Barcode-encoders voeren payloadinhoud niet uit; ze coderen die als data. GS1-validatie wijst misvormde AI-structuren en ongeldige check digits af vóór encoding, wat voorkomt dat een misvormde supply-chain-string een scanbaar maar niet-conform symbool produceert. De encoders loggen zelf geen payload; applicaties moeten gevoelige payloads uit hun eigen logs scrubben.
Conformiteit
Sectie met titel “Conformiteit”Elke symbologie volgt de relevante gepubliceerde standaard (ISO/IEC 24724 voor GS1 DataBar, ISO/IEC 24723 voor GS1 Composite, ISO/IEC 23941 voor rMQR, ISO/IEC 18004 Annex voor Micro QR, ISO/IEC 20830 voor Han Xin Code, ISO/IEC 23634 voor JabCode, USPS-B-3200 voor de postsymbologie). Clausuleniveau-conformiteitsmapping met citation-identifiers rendert in de diepe barcode-referentie.
Publicatiegrens
Sectie met titel “Publicatiegrens”Deze pagina documenteert alleen extern waarneembaar gedrag en het ondersteunde publieke API-oppervlak. Interne namespace-paden, helper-klassen, mechanismetabellen, runbook-bestandsnamen en ticket-prefixes vallen buiten de scope.