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
iText Core – 8.0.2 (Java) | N/A | |||
iText Core – 8.0.2 (.NET) | N/A |
Changelog
New features
Improvements
Bugs
|