콘텐츠로 이동
getnextpdf.com

Pro 에디션

Barcode

NextPDF Pro는 오픈 소스 에디션의 선형 및 QR 심볼로지 위에 특수 2D 및 공급망 바코드 심볼로지를 추가합니다. 각 심볼로지는 결정적 콘텐츠 스트림으로서 PDF 페이지 표면에 직접 렌더링됩니다.

이 역량은 NextPDF Pro(nextpdf/pro)에 포함되어 제공되며 Pro 계층 라이선스 엔벨로프로 활성화됩니다. 해당 권한이 없는 배포는 이 역량의 클래스를 로드하지 않습니다. 에디션 비교 및 라이선스 받기.

Terminal window
composer require nextpdf/pro:^3

Pro 인코더는 표준 바코드 인코더 레지스트리를 통해 스스로를 등록합니다. 자체 레지스트리를 빌드하는 애플리케이션은 발행된 서비스 공급자를 통해 Pro 인코더를 명시적으로 다시 등록할 수 있습니다.

오픈 소스 에디션은 일상적인 선형 및 QR 심볼로지를 다룹니다. NextPDF Pro는 소매, 물류, 우편, 고밀도 산업용 특수 심볼로지로 동일한 레지스트리를 확장합니다.

  • Micro QR Code — 작은 라벨 공간을 위한 컴팩트 QR 변형.
  • DotCode — 고속 산업용 마킹을 위해 설계된 도트 매트릭스 심볼로지.
  • Han Xin Code — ISO/IEC 20830에 따라 대규모 집합 CJK 텍스트 용량을 기본 지원하는 2D 심볼로지.
  • JabCode — 다중 심볼 캐스케이딩을 갖춘 다색(polychrome) 2D 심볼로지.
  • rMQR — 좁고 넓은 라벨을 위한 직사각형 Micro QR 변형.
  • GS1 DataBar — GS1 소매 및 쿠폰 심볼로지 제품군.
  • GS1 Composite (CC-C) — GS1 Application Identifier 데이터를 담는 고밀도 PDF417 2D 확장 구성 요소에 연결된 1D 기반. (CC-A 및 CC-B 2D 확장 구성 요소 인코딩은 이번 릴리스에서 지원되지 않습니다. 지원 매트릭스를 참조하십시오.)

각 인코더는 페이지 렌더러가 PDF 콘텐츠 연산자로 변환하는 바코드 데이터 객체를 생성합니다. 인코딩은 결정적입니다. 즉, 동일한 입력과 옵션은 항상 동일한 모듈 패턴을 생성하며, 이는 서명되고 아카이브된 문서를 재현 가능하게 유지합니다.

바코드 심층 참조는 증거가 포함된 심볼로지별 지원 매트릭스를 담습니다. 모든 심볼로지와 변형에 대해, 매트릭스는 세 가지 상태 중 하나를 기록합니다. 즉, 저장소 내 적합성 픽스처가 그것을 실행하거나(Verified), 구현 표면이 전용 픽스처 없이 그것을 주장하거나(Claimed), 범위에서 벗어납니다(Not supported). NextPDF는 매트릭스를 정직하게 보고합니다. 인코더를 제공하지만 참조 트레이스 픽스처가 없는 변형은 과장되지 않고 백필(backfill) 참고와 함께 Claimed로 남습니다.

모든 Pro 인코더는 순수 함수입니다. 동일한 페이로드와 옵션은 숨겨진 상태나 시드된 무작위성 없이 항상 동일한 모듈 행렬을 생성합니다. 이 결정성은 핵심을 떠받치는 결정입니다. 이는 바코드가 서명되거나 아카이브된 문서를 통해 왕복하면서도 바이트 스트림을 교란하지 않게 하여, 재렌더링이 서명을 무효화하지 않도록 합니다. 또한 적합성을 감사 가능하게 만듭니다. 지원 매트릭스는 각 심볼로지를 저장된 참조 트레이스에 고정하고, 이를 골든 파일과 비트 단위로 대조합니다. Core BarcodeEncoderRegistry를 포크하는 대신 확장함으로써 이러한 보장은 오픈 에디션과 Pro 에디션 전반에서 동일하게 유지됩니다.

설계 배경: 매번 동일한 바이트: 재현 가능한 PDF.

Terminal window
composer require nextpdf/pro:^3

Pro 바코드 공개 표면은 다음으로 구성됩니다.

  • Pro 2D 인코더(MicroQR, DotCode, HanXin, JabCode, RMQR, GS1DataBar, 그리고 GS1 Composite CC-C 구성 요소 키 gs1-composite-cc-c)를 바코드 인코더 레지스트리에 등록하는 정적 서비스 공급자 진입점. GS1 Composite CC-A 및 CC-B 2D 확장 구성 요소 인코딩은 이번 릴리스에서 지원되지 않으며 등록되지 않습니다.
  • 사람이 읽을 수 있는 AI 문자열과 GS1 Digital Link URI를 모두 받아 GS1-128, QR Code, Data Matrix 캐리어용 인코딩된 바이트 시퀀스를 생성하는 GS1 Application Identifier 파서.
  • 체크 디지트, AI 구조, 날짜 로직, 그리고 산업 프로파일 필수 AI 조합을 검사하는 GS1 공급망 검증기.

생성된 전체 메서드 시그니처 표는 바코드 심층 참조에 렌더링됩니다.

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,
]);
}
}
  • 기본 레지스트리는 Pro 인코더 항목을 지연(lazily) 사전 바인딩하고 역량 레지스트리를 통해 게이트합니다. 명시적 BarcodeProServiceProvider::register() 호출은 애플리케이션이 기본값 없이 자체 레지스트리를 구성할 때 지원되는 폴백입니다.
  • 재등록은 멱등(idempotent)합니다. 두 번째 register() 호출은 오류를 발생시키는 대신 첫 번째 바인딩을 교체합니다.
  • GS1 DataBar 변형 커버리지는 설계상 부분적입니다. Omnidirectional, Truncated, Stacked, Stacked Omnidirectional, Limited은 참조 검증되었습니다. Expanded와 Expanded Stacked는 이번 릴리스에서 범위 밖입니다. 지원 매트릭스를 참조하십시오.
  • rMQR은 Annex 검증 적합성 스위트를 통해 모든 ISO 23941 버전을 받습니다. 이후의 크기 범위 확장보다 앞서는 범위 추적 메타데이터는 이를 과소평가할 수 있습니다. 지원 매트릭스는 코드로 검증된 실제 상태를 기록합니다.

인코딩 비용은 페이로드 길이와 대상 심볼 크기에 따라 확장됩니다. 각 심볼로지는 리플로(reflow) 없이 단일 패스로 심볼을 배치합니다. JabCode 다중 심볼 캐스케이드는 심볼 수(1–61)에 따라 확장됩니다. 인코딩은 모듈 행렬을 메모리에 보유합니다. 선택된 가장 큰 심볼 버전이 비용을 한정합니다.

바코드 인코더는 페이로드 콘텐츠를 실행하지 않습니다. 이를 데이터로 인코딩합니다. GS1 검증은 인코딩 전에 잘못된 형식의 AI 구조와 유효하지 않은 체크 디지트를 거부하여, 잘못된 형식의 공급망 문자열이 스캔 가능하지만 부적합한 심볼을 생성하는 것을 방지합니다. 인코더는 어떤 페이로드도 자체적으로 로그에 기록하지 않습니다. 애플리케이션은 자체 로그에서 민감한 페이로드를 스크러빙해야 합니다.

각 심볼로지는 관련 발행 표준을 따릅니다(GS1 DataBar는 ISO/IEC 24724, GS1 Composite는 ISO/IEC 24723, rMQR은 ISO/IEC 23941, Micro QR은 ISO/IEC 18004 Annex, Han Xin Code는 ISO/IEC 20830, JabCode는 ISO/IEC 23634, 우편 심볼로지는 USPS-B-3200). 인용 식별자가 포함된 조항 수준 적합성 매핑은 바코드 심층 참조에 렌더링됩니다.

이 페이지는 외부에서 관찰 가능한 동작과 지원되는 공개 API 표면만 문서화합니다. 내부 네임스페이스 경로, 헬퍼 클래스, 메커니즘 표, 런북 파일명, 티켓 접두사는 범위 밖입니다.