İçeriğe geç
getnextpdf.com

Pro sürüm

Barkod

NextPDF Pro, açık kaynaklı sürümdeki doğrusal ve QR sembolojilerinin üzerine özel 2D ve tedarik zinciri barkod sembolojileri ekler. Her semboloji, belirleyici bir içerik akışı olarak doğrudan bir PDF sayfa yüzeyine işlenir.

Bu yetenek NextPDF Pro (nextpdf/pro) ile gelir ve bir Pro katmanı lisans zarfıyla etkinleşir. Bu yetkilendirmeye sahip olmayan bir dağıtım, yeteneğin sınıflarını yüklemez. Sürümleri karşılaştırın ve bir lisans alın.

Terminal window
composer require nextpdf/pro:^3

Pro kodlayıcıları kendilerini standart barkod kodlayıcı kayıt defteri aracılığıyla kaydeder. Kendi kayıt defterlerini oluşturan uygulamalar, Pro kodlayıcılarını yayımlanmış hizmet sağlayıcısı aracılığıyla açıkça yeniden kaydedebilir.

Açık kaynaklı sürüm, günlük doğrusal ve QR sembolojilerini kapsar. NextPDF Pro, aynı kayıt defterini perakende, lojistik, posta ve yüksek yoğunluklu endüstriyel kullanım için özel sembolojilerle genişletir:

  • Micro QR Code — küçük etiket alanı için kompakt QR varyantı.
  • DotCode — yüksek hızlı endüstriyel işaretleme için tasarlanmış bir nokta-matris sembolojisi.
  • Han Xin Code — ISO/IEC 20830 uyarınca yerel büyük-küme CJK metin kapasitesine sahip bir 2D sembolojisi.
  • JabCode — çok-sembollü kademelendirmeye sahip çok renkli bir 2D sembolojisi.
  • rMQR — dar, geniş etiketler için dikdörtgen Micro QR varyantı.
  • GS1 DataBar — GS1 perakende ve kupon sembolojisi ailesi.
  • GS1 Composite (CC-C) — GS1 Application Identifier verisini taşıyan bağlı bir 1D taban artı yüksek yoğunluklu bir PDF417 2D genişletme bileşeni. (CC-A ve CC-B 2D genişletilmiş-bileşen kodlaması bu sürümde desteklenmez; destek matrisine bakın.)

Her kodlayıcı, sayfa işleyicisinin PDF içerik işleçlerine dönüştürdüğü bir barkod veri nesnesi üretir. Kodlama belirleyicidir: aynı girdi ve seçenekler her zaman aynı modül desenini üretir; bu da imzalı ve arşivlenmiş belgeleri yeniden üretilebilir tutar.

Barkod derin referansı, kanıtla birlikte sembolojiye özel bir destek matrisi taşır. Her semboloji ve varyant için matris, üç durumdan birini kaydeder: depo içi bir uygunluk fikstürü onu çalıştırır (Verified), uygulama yüzeyi onu özel bir fikstür olmadan ileri sürer (Claimed) veya kapsam dışında kalır (Not supported). NextPDF matrisi dürüstçe raporlar: bir kodlayıcı sevk eden ama bir referans-iz fikstürü olmayan bir varyant, abartılmak yerine bir geri-doldurma notuyla Claimed kalır.

Her Pro kodlayıcı saf bir fonksiyondur: aynı yük ve seçenekler, gizli durum veya tohumlanmış rastgelelik olmadan her zaman aynı modül matrisini üretir. Bu belirlilik, yük taşıyan karardır. Bir barkodun, bayt akışını bozmadan imzalı veya arşivlenmiş bir belgede gidiş-dönüş yapmasına olanak tanır; böylece bir yeniden işleme asla bir imzayı geçersiz kılmaz. Ayrıca uygunluğu denetlenebilir kılar: destek matrisi, her sembolojiyi depolanmış bir referans ize sabitler ve bir altın dosyaya karşı bit-be-bit denetler. Core BarcodeEncoderRegistry sınıfını çatallamak yerine genişletmek, bu güvenceleri açık ve Pro sürümleri arasında özdeş tutar.

Tasarım arka planı: Her seferinde aynı baytlar: yeniden üretilebilir PDF’ler.

Terminal window
composer require nextpdf/pro:^3

Pro barkod genel yüzeyi şunlardan oluşur:

  • Pro 2D kodlayıcılarını bir barkod kodlayıcı kayıt defterine kaydeden statik bir hizmet-sağlayıcı giriş noktası (MicroQR, DotCode, HanXin, JabCode, RMQR, GS1DataBar ve GS1 Composite CC-C bileşen anahtarı gs1-composite-cc-c). GS1 Composite CC-A ve CC-B 2D genişletilmiş-bileşen kodlaması bu sürümde desteklenmez ve kaydedilmez.
  • Hem insan tarafından okunabilir AI dizelerini hem de GS1 Digital Link URI’lerini kabul eden ve GS1-128, QR Code ve Data Matrix taşıyıcıları için kodlanmış bayt dizileri üreten bir GS1 Application Identifier ayrıştırıcısı.
  • Kontrol basamaklarını, AI yapısını, tarih mantığını ve sektör-profili zorunlu AI kombinasyonlarını denetleyen bir GS1 tedarik zinciri doğrulayıcısı.

Tam üretilmiş yöntem-imzası tablosu, barkod derin referansı sayfasında işlenir.

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,
]);
}
}
  • Varsayılan kayıt defteri, Pro kodlayıcı girişlerini tembel olarak önceden bağlar ve bunları yetenek kayıt defteri aracılığıyla geçitler. Bir uygulama, varsayılanları olmadan kendi kayıt defterini oluşturduğunda, açık bir BarcodeProServiceProvider::register() çağrısı desteklenen yedektir.
  • Yeniden kayıt idempotenttir: ikinci bir register() çağrısı, hata fırlatmak yerine ilk bağlamayı değiştirir.
  • GS1 DataBar varyant kapsamı, tasarım gereği kısmidir. Omnidirectional, Truncated, Stacked, Stacked Omnidirectional ve Limited referans-doğrulanmıştır; Expanded ve Expanded Stacked bu sürümde kapsam dışıdır. Destek matrisine bakın.
  • rMQR, Ek-doğrulanmış uygunluk paketi aracılığıyla her ISO 23941 sürümünü kabul eder. Sonraki boyut-aralığı genişlemesinden önce gelen kapsam-izleme meta verisi bunu eksik gösterebilir; destek matrisi, kod-doğrulanmış gerçeği kaydeder.

Kodlama maliyeti, yük uzunluğu ve hedef sembol boyutuyla ölçeklenir. Her semboloji, sembolünü hiç yeniden akış olmadan tek geçişte yerleştirir. JabCode çok-sembollü kademelendirmeleri, sembol sayısıyla (1–61) ölçeklenir. Kodlama, modül matrisini bellekte tutar; seçilen en büyük sembol sürümü maliyeti sınırlar.

Barkod kodlayıcıları yük içeriğini yürütmez; onu veri olarak kodlar. GS1 doğrulaması, kodlamadan önce hatalı biçimli AI yapılarını ve geçersiz kontrol basamaklarını reddeder; bu da hatalı biçimli bir tedarik zinciri dizesinin taranabilir ama uyumlu olmayan bir sembol üretmesini önler. Kodlayıcılar yükü kendileri günlüğe kaydetmez; uygulamalar, hassas yükleri kendi günlüklerinden temizlemelidir.

Her semboloji, ilgili yayımlanmış standardını izler (GS1 DataBar için ISO/IEC 24724, GS1 Composite için ISO/IEC 24723, rMQR için ISO/IEC 23941, Micro QR için ISO/IEC 18004 Ek, Han Xin Code için ISO/IEC 20830, JabCode için ISO/IEC 23634, posta sembolojisi için USPS-B-3200). Alıntı tanımlayıcılarıyla madde düzeyinde uygunluk eşlemesi, barkod derin referansı sayfasında işlenir.

Bu sayfa yalnızca dışarıdan gözlemlenebilir davranışı ve desteklenen genel API yüzeyini belgeler. Dahili ad alanı yolları, yardımcı sınıflar, mekanizma tabloları, çalışma kılavuzu dosya adları ve bilet önekleri kapsam dışıdır.