Skip to content

Pro Package

Pro · Commercial
Pro — Commercial License Required
The Pro package requires a commercial license: $1,000 USD per application, perpetual per major version.

The Pro package (yeeefang/tcpdf-nextpro) extends Core with enterprise-grade security and compliance features that go beyond what the open-source packages provide.

Feature Comparison

FeatureCorePro
PDF 2.0 generationYesYes
AES-256 encryptionYesYes
PAdES B-B signaturesYesYes
PAdES B-T / B-LT / B-LTA--Yes
Long-Term Validation (LTV)--Yes
PDF/A-4 archival--Yes
PDF/UA accessibility--Yes
HSM integration (PKCS#11)--Yes
Certificate Transparency--Yes
RSASSA-PSS signatures--Yes

Installation

bash
composer require yeeefang/tcpdf-nextpro

Set your license key in the environment:

bash
# .env
TCPDF_PRO_LICENSE_KEY=your-license-key

Package Contents

ModuleClassesPurpose
Security/Signature5PAdES B-B through B-LTA digital signatures
Security/Ltv4Long-Term Validation -- DSS, OCSP, CRL
Security/Timestamp2RFC 3161 TSA timestamps
Security/Encryption2AES-256 (AESV3) with SASLprep
Security/Hsm2Hardware Security Module (PKCS#11)
Archive5PDF/A-4 compliance, XMP metadata
Accessibility3Tagged PDF, structure tree, role mapping

Total: 47 source files across 7 modules.

Namespace

All Pro classes live under 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

Quick Example

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');

Next Steps

Released under the LGPL-3.0-or-later License.