Ga naar inhoud
getnextpdf.com

Pro editie

Barcode

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.

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.

Terminal window
composer require nextpdf/pro:^3

De 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.

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.

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.

Terminal window
composer require nextpdf/pro:^3

Het 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, GS1DataBar en de GS1 Composite CC-C-componentsleutel gs1-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.

use NextPDF\Barcode\BarcodeEncoderRegistry;
use NextPDF\Pro\Barcode\BarcodeProServiceProvider;
$registry = new BarcodeEncoderRegistry();
BarcodeProServiceProvider::register($registry);
// $registry now resolves the Pro specialty symbologies.
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,
]);
}
}
  • 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.

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.

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.

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.

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.