PDFL Release Notes

Major updates in PDFL SDK XVIII release include:

  • ICU libraries have been upgraded to the latest version i.e. 64.2.

  • All files are now in .cpp extension. With this change, default compiler settings would work to build the entire PDFL. For backward compatibility, we have not removed .c files.

  • PDEFormIsLeadingSet API has been added which checks whether the Text Leading (TL) is set in the graphics state or not.

  • Parameter ‘pathDPI’ of PDFlattenRec structure has been enabled which affects the degree of flattening Beziers..

  • Location of resources for Type3 fonts are aligned with PDF specification.

  • Support for UTF-8 character encoding as per PDF 2.0 specification has been added.

  • From 18.0.3 onwards, Mac Builds are BAST V3 signed following the Apple Notarization Guidelines.

  • Support for new era glyph - Updated CMaps and Font resources to support Japanese new era characters.

  • Support for Windows 7 has been discontinued.

  • PDEExtGStateGetSoftMaskMatrix and PDEExtGStateSetSoftMaskMatrix APIs have been added to get and set the soft mask matrix in external gstate respectively.

  • Two new APIs PDEFormGetLeading and PDEFormSetLeading have been added to get and set respectively the Leading in the parent of Form.

  • A new parameter weight of type unsigned integer is added in PDEFontAttrs structure.

  • Support for PDF 2.0 file version - PDF Library can now read and edit files with PDF 2.0 version. Two new APIs PDDocGetAdobePDFVersion and PDDocSetAdobePDFVersion have been introduced in this release for getting and setting new PDF versions respectively.

  • Support of Black point compensation (BPC) flag - UseBlackPtComp has been added to the graphic state parameter dictionary. Two new APIs PDEExtGStateGetBPC and PDEExtGStateSetBPC have been added to get and set the UseBlackPtComp flag value respectively.

  • Support for Page-Level Output Intent - User can set Output Intent for each Page as well. Two new APIs PDDocColorConvertEmbedOutputIntentEx and PDPageColorConvertEmbedOutputIntent have been added to support new output intent subtypes added in PDF 2.0. Appropriate subtype like GTS_PDFX, GTS_PDFA, and ISO_PDFE1 can be added to the output profile as per the value passed to these APIs.

  • If output intent already exists at Doc/Page level, then new output intent gets added to the existing one.

  • PDColorConvertPDEElementEx2 API has been added to support conversion to a PDEElement to the supplied color space.

  • PDSysEncodingSetIsUTF16 API has been added to check if an encoding is UTF-16 or not.

  • In PDF 2.0, versioning model has been changed and now support 2-part version system which is a combination of Major and Minor versions like Major.Minor as compared to 3-part version system Major.Minor.ExtensionLevel in PDF 1.7.

  • Updated Decryption Sample to showcase the support for Unicode based password protected PDFs.

  • Updated CMaps and mapping resources to support Adobe-Japan1-7 fonts.

  • Full compatibility with Acrobat DC.

  • The current release includes the following changes to the supported platforms. In version 18.0 and later:

    • Windows 10 is the primary operating system for Windows platforms.

    • The supported compiler for all Windows platforms is Visual Studio 2017(version 15.3.3).

    • Mac OS X 10.12 (Sierra) is supported on 64-bit platforms.

    • The supported operating system for Linux platforms is CentOS 7.3, with the Clang 3.9.1 compiler. The glibc version to be used is 2.17.

    • The supported compiler for all Macintosh platforms is Xcode Developer Tools 8.2.1.

    • Support for the following platforms has been discontinued:

      • Red Hat Enterprise Linux 7 on 32-bit platform.

      • Red Hat Enterprise Linux 7 on 64-bit platform.

      • Mac OS X 10.9 (Mavericks) on 64-bit platform.