LumasPDF 4.2.3
Released 2026-09-10 · built 2026-09-10 (stamp 1788998400)
PDF/A-1b conformance fixes found with an independent validator: the XMP packet now mirrors the document title, and embedded CID font subsets carry the /CIDSet stream. One legacy alias export removed.
| Kind | Change | Slice | Issue |
|---|---|---|---|
| fix | PDF/A: the XMP packet now mirrors the document title When a document carried an Info /Title, the XMP packet written for PDF/A output had no dc:title, so validators failed the file on ISO 19005-1 rule 6.7.3-2. The title is now written to dc:title (x-default) for every standards packet: PDF/A, PDF/X, PDF/VT, PDF/UA and ZUGFeRD/Factur-X. Found with veraPDF on a signed PDF/A-1b file produced by the Python example. | all | |
| fix | PDF/A-1: embedded CID font subsets now carry a /CIDSet stream Every Type0 font the engine embeds (Identity-H/V and predefined-CMap fonts, on both engine builds) wrote a subset without the /CIDSet stream that ISO 19005-1 rule 6.3.5-3 requires in the font descriptor, so a PDF/A-1b file with any embedded TrueType text failed validation. The shipped signed_pdfa example was affected. The stream is now written with one bit per CID used by the subset. PDF/A-2 and later do not require it and are unaffected. | all | |
| fix | signed_pdfa example: signature field appearance The Python port of the example created the signature field without an appearance stream, which PDF/A rule 6.9-2 rejects. The example now calls CreateSigFieldAP before closing the page, matching the other language ports. | all | |
| breaking | One legacy alias export removed The engine exported a second name for pdfGetLumasPDFVersion that dated from the API origins. The alias is gone from the DLL, the headers and every binding; call pdfGetLumasPDFVersion, or GetLumasPDFVersion in the object-oriented units. The export count drops from 1656 to 1655. No other signature changed. | all | |
| docs | Re-validate archival output after upgrading If you produce PDF/A-1b files, the two fixes change the bytes the engine writes for fonts and metadata. Files written by 4.2.2 remain readable; only newly written files gain the /CIDSet stream and the dc:title entry. Run your own validator on one document from each pipeline before relying on the change. | all |