Skip to main content
Skip table of contents

Release iText Core 8.0.2

Release date: Oct 25, 2023

Just in time for Halloween, here’s a new release of your favorite open-source PDF library for Java and .NET. There’s nothing spooky about: iText Core version 8.0.2 and the updated iText Suite add-ons in this release though! Let’s take a closer look.

PDF/A-4 support

The a ("Accessibility"), u ("Unicode") and b ("Basic") conformance levels in earlier variants of PDF/A have been replaced by two new profiles: e and f. The PDF/UA format now exists for Universal Accessibility, and Unicode is now a requirement in PDF/A-4 for text encoding rather than a specific conformance level. Therefore, the base PDF/A-4 specification replaces the b and u conformance levels.

PDF/A-4e (Engineering) replaces the old PDF/E standard for technical documents, and supports Rich Media and 3D annotations, PDF/A-4f allows any type of file to be embedded, similar to PDF/A-3, and builds upon PDFs existing container format capabilities.

In addition, PDF/A-4 has better support for the archiving of fillable forms than PDF/A-3, since non-static content is now allowed in the form of JavaScript. Therefore, information about interactive forms can be both stored and archived.

Digital signing

We continue the digital signature revolution we introduced with iText Core version 8.0 with a significant improvement which allows signing to be performed in several steps, rather than as a single operation. This can be especially useful to facilitate concurrency and manage resources efficiently in batch operations. The new deferred signing API already allowed this to some degree, although it required users to manually implement IExternalSignatureContainer themselves – which is no longer necessary.

There’s also a nice improvement for the appearance of digital signatures. Now, the generation of the appearance of signature form fields is delegated to the layout module rather than being manually implemented in the PdfSignatureAppearance class, enabling completely customizable appearances. This means the old layer-based approach is outdated, and has been deprecated.

Stay tuned for future releases to see further strides in digital signing.

Annotation flattening

There are some nice changes to annotation flattening, where we’ve implemented a high-level API to simplify and enable easy customization of annotation flattening. You can either tell iText to flatten all annotations with just two lines of code, or if you prefer you can define specific types of annotation to be flattened. The power is now at your fingertips.

Bug fixes and miscellaneous

There’s also some miscellaneous improvements and fixes for the layout module relating to table row and cell properties, as well as fixes for a potential infinite loop with tables. We’ve also fixed an issue where a maliciously crafted PDF with a huge number of pages and empty data structures could cause an out of memory error. Now iText will avoid such issues by more intelligently allocating memory for documents like this.

Since this release, this issue has been published as CVE-2023-6299. However, the CVE report is, at the time of writing (28 November 2023) incorrect, since this vulnerability was fixed in this release. For more information, refer to our CVE information page.

The itext.bouncy-castle-adapter previously relied upon the Portable.BouncyCastle dependency. However, as of this release, we transitioned to use the newer BouncyCastle.Cryptography package officially maintained by the Legion of the Bouncy Castle Inc.

As always, you can click the Changelog tab in the table below to see the full rundown on what’s new in Core, and details of other bugfixes for this release.

Also, don’t forget to check out the release-related examples below, as well as the updated Core add-ons we’ve released this time:

iText Suite 8.0.2 Releases

Release Related Examples

Downloads

Changelog

New features

  • PDF/A-4 family support

  • Introduced higher level signing API

  • High-level API for annotation flattening

Improvements

  • Create default implementation for IExternalSignatureContainer

  • Signature appearance improvements

  • Transition .NET BouncyCastle dependency to BouncyCastle.Cryptography

Bugs

  • KeepTogether property set on table might lead to infinite loop

  • PDF with Missing Dict Causes Exception

  • Incorrect processing of table cells with large rowspan occupying more than one page

  • Row span doesn't carry the Cell color to next page

eBooks

Installation Instructions

Examples (latest ones)

FAQ (latest ones)

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.