Skip to content

Pro 패키지

Pro · Commercial
Pro — Commercial License Required
Pro 패키지는 상용 라이선스가 필요합니다: 애플리케이션당 $1,000 USD, 메이저 버전별 영구 라이선스.

Pro 패키지(yeeefang/tcpdf-nextpro)는 오픈소스 패키지가 제공하는 범위를 넘어서는 엔터프라이즈급 보안 및 규정 준수 기능으로 Core를 확장합니다.

기능 비교

기능CorePro
PDF 2.0 생성
AES-256 암호화
PAdES B-B 서명
PAdES B-T / B-LT / B-LTA--
장기 검증 (LTV)--
PDF/A-4 아카이브--
PDF/UA 접근성--
HSM 통합 (PKCS#11)--
인증서 투명성--
RSASSA-PSS 서명--

설치

bash
composer require yeeefang/tcpdf-nextpro

환경 변수에 라이선스 키를 설정합니다:

bash
# .env
TCPDF_PRO_LICENSE_KEY=your-license-key

패키지 구성

모듈클래스 수목적
Security/Signature5PAdES B-B부터 B-LTA까지의 디지털 서명
Security/Ltv4장기 검증 -- DSS, OCSP, CRL
Security/Timestamp2RFC 3161 TSA 타임스탬프
Security/Encryption2SASLprep을 적용한 AES-256 (AESV3)
Security/Hsm2하드웨어 보안 모듈 (PKCS#11)
Archive5PDF/A-4 규정 준수, XMP 메타데이터
Accessibility3태그가 지정된 PDF, 구조 트리, 역할 매핑

총 47개의 소스 파일, 7개 모듈로 구성되어 있습니다.

네임스페이스

모든 Pro 클래스는 Yeeefang\TcpdfNext\Pro\ 하위에 위치합니다:

Yeeefang\TcpdfNext\Pro\Security\Signature\DigitalSigner
Yeeefang\TcpdfNext\Pro\Security\Signature\CertificateInfo
Yeeefang\TcpdfNext\Pro\Security\Signature\ByteRangeCalculator
Yeeefang\TcpdfNext\Pro\Security\Signature\SignatureAppearance
Yeeefang\TcpdfNext\Pro\Security\Ltv\LtvManager
Yeeefang\TcpdfNext\Pro\Security\Ltv\DssBuilder
Yeeefang\TcpdfNext\Pro\Security\Ltv\OcspClient
Yeeefang\TcpdfNext\Pro\Security\Ltv\CrlFetcher
Yeeefang\TcpdfNext\Pro\Security\Timestamp\TsaClient
Yeeefang\TcpdfNext\Pro\Security\Timestamp\DocumentTimestamp
Yeeefang\TcpdfNext\Pro\Security\Encryption\Aes256Encryptor
Yeeefang\TcpdfNext\Pro\Security\Encryption\SaslPrep
Yeeefang\TcpdfNext\Pro\Security\Hsm\HsmSigner
Yeeefang\TcpdfNext\Pro\Security\Hsm\Pkcs11Bridge
Yeeefang\TcpdfNext\Pro\Archive\PdfAManager
Yeeefang\TcpdfNext\Pro\Archive\XmpMetadata
Yeeefang\TcpdfNext\Pro\Archive\OutputIntent
Yeeefang\TcpdfNext\Pro\Archive\IccProfile
Yeeefang\TcpdfNext\Pro\Archive\PdfAVersion
Yeeefang\TcpdfNext\Pro\Accessibility\StructureTreeManager
Yeeefang\TcpdfNext\Pro\Accessibility\RoleMap

빠른 예제

php
use Yeeefang\TcpdfNext\Core\Document;
use Yeeefang\TcpdfNext\Pro\Security\Signature\DigitalSigner;
use Yeeefang\TcpdfNext\Pro\Security\Signature\CertificateInfo;
use Yeeefang\TcpdfNext\Pro\Security\Signature\SignatureAppearance;
use Yeeefang\TcpdfNext\Pro\Security\Ltv\LtvManager;
use Yeeefang\TcpdfNext\Pro\Security\Timestamp\TsaClient;
use Yeeefang\TcpdfNext\Contracts\Enums\SignatureLevel;

$pdf = Document::create()
    ->addPage()
    ->font('Helvetica', size: 12)
    ->text('Enterprise-signed document.');

$cert = CertificateInfo::fromPkcs12('/certs/signer.p12', 'passphrase');
$tsa  = new TsaClient('https://tsa.example.com/timestamp');

$signer = new DigitalSigner($cert);
$signer->level(SignatureLevel::PAdES_B_LTA);
$signer->timestampAuthority($tsa);

LtvManager::embed($pdf, $signer);

$pdf->save('/output/signed.pdf');

다음 단계

LGPL-3.0-or-later 라이선스로 배포됩니다.