dskripchenko/laravel-php-pdf
Laravel integration for the PHP-PDF library, making it easy to generate and work with PDF documents inside your Laravel applications. Provides a familiar service-provider setup and a clean, framework-friendly API for creating PDFs.
dskripchenko/php-pdf.signing.signer and fonts.provider bindings mean fewer custom service-provider hacks.signing.signer binding (container binding or class resolving to a Signer/CmsSigner) unlocks CryptoPro CSP, PKCS#11 tokens, HSMs, and cloud KMS without touching application code. This is the strategic unlock for eIDAS-style or regulated-industry signing workflows — a roadmap-level capability, not just a config tweak.fonts.provider lets you supply families not listed in config (e.g., Liberation fonts with Arial / Times New Roman / Courier New aliases), which matters for legally-expected typography and branded output. The font-face fix (bold/italic/bold-italic previously silently rendered as regular) removes a real, user-visible defect in generated documents.Pdf::signDetached() now works with CmsSigner (php-pdf 1.20+), supporting architectures where the signature is stored separately from the document — audit trails, archival, and verification pipelines.php-pdf ^1.18. Confirm your installed php-pdf version and run signing/font regression tests before rollout.Adopt when:
php-pdf and tracking its releases.Look elsewhere when:
To executives: This release turns signed-document generation into a configuration decision rather than an engineering project. We can now point the same code at a local certificate, a hardware token, an HSM, or a cloud KMS by changing a binding — which is the difference between "we can sign PDFs" and "we can serve regulated enterprise customers." It also fixes a visible quality bug where bold text rendered as regular in branded documents. Cost is a version bump, not a rewrite.
To engineering: v1.5.0 adds two extension points — signing.signer (resolved once, replaces the configured certificate/key for Pdf::sign(), ->signed(), Pdf::signatureConfig(), and Pdf::signDetached()) and fonts.provider (asked for families not listed in fonts.families). It fixes per-face font resolution (bold/italic no longer collapse to regular, with fallback to regular when unconfigured) and fixes a TypeError in signDetached() with CmsSigner. It requires php-pdf ^1.18 (was ^1.16), and signDetached() + CmsSigner needs php-pdf 1.20+ or it fails with a clear message. Small surface area, testable, and the upgrade path is explicit.
Risks to flag: Dependency on upstream php-pdf maturity and release cadence; document fidelity and legal admissibility must be validated per jurisdiction; and the font-face fix may change output of existing documents — worth a visual regression pass.
How can I help you explore Laravel packages today?