Release iText Core 9.1.0
We said the previous 9.0 release was extra-special, but 25th anniversary releases don’t come along every day! So, this time we've prepared an extra-extra-special PDF showcase to demonstrate the improved SVG capabilities, faster tables, along with a bunch of advanced iText features. The pdfHTML add-on was used to turn these release notes into a document conforming to the PDF/A-4f, PDF/UA-2, and WTPDF standards. You can see the SVG Text improvements and how it benefits pdfCalligraph, along with the major table and CSS enhancements.
As always, it features a dynamically generated table of contents and bookmarks, layers, SVG rendering, and automatic pagination using our Events engine.
We've also embedded the source code and required resources to recreate the document, along with a MAC-protected version of the document (use the password "itext" to open it), and digitally signed it with a National Identity Card too. You can even validate it using the included Java and C# code samples!
Release date: Feb 14th, 2025
To celebrate both iText’s 25th anniversary and Valentine’s Day, we bring you iText Core version 9.1.0. There’s a lot to love about this release, with a huge performance increase in table creation, massively extended SVG support, and further Digital Signing goodies.
That’s by no means all though, as we’re also releasing new add-on versions across the iText Suite PDF SDK.
Extended SVG Support
Many additions and enhancements have been made to our in-house implementation since it was introduced, with coverage of the specification steadily increasing to meet customer needs. This release sees our biggest leap yet with over 40 tickets being closed – full marks to our incredible dev team!
Newly added are support for text clipping paths, 'marker-mid' properties, text decoration, and passing markers from <g>
elements to children. We’ve improved general font handling, while some other improvements to draw attention to are in the support for relative size attributes, text positioning, 'direction' properties, stroke opacity, and dash patterns.
There's also improved support for CSS-specific SVG, which you can find more details on in the pdfHTML release notes. However, we'll call out the improved support for different CSS origins in SVG and referencing external resources with the @importurl()
rule.
We’ve significantly improved the SVG module’s usage of the advanced typography features enabled by the pdfCalligraph add-on. This, along with many other things is shown off in the release notes PDF.
Increased Table Performance
With iText Core 9.1 the table rendering code has been highly-optimized, particularly when it comes to tagged tables. If you look at the comparison graphs below, you can see there is a huge reduction in the time iText takes to create a table.

Time taken to render tables is greatly reduced, especially as table size increases
Digital Signatures
We’re continually working on iText’s digital signing and validation capabilities to provide a unique breadth of support in the market. MAC integrity protection support is extended to support two-step signing. There’s also new code examples for signing with the Cloud Signing Consortium (CSC) API, which we recently wrote about in Part V of our Digital Signing with iText series. You can find these in the GitHub samples repositories linked below.
Alongside that, we’ve made some general improvements (if you know, you know) to signing and validation. In particular, the workaround for certificates where the pathLength
parameter is set to 0 for the basicConstraints
extension is no longer required.
PDF/UA-2
Our PDF/UA-2 implementation is improved, specifically, when using the Annot tag for content elements in PDF 2.0 documents. Don’t tell anyone, but our team is preparing further PDF/UA-2 goodies for our next release.
Pull Requests
For this release, we’d like to thank Stefan Bechtold for submitting a PR adding support for styling tables with nth-last pseudo class selectors. Thanks also to Artyom Skrobov for squashing a bug when decoding an empty PdfString, and finally Zuzu-Typ for fixes to the kernel PDF encryption constants documentation.
Bug Fixes and Miscellaneous
There’s an update for merge handling when remote and embedded go-to actions are present, and we resolved a customer issue related to decoding Xref streams with missing bytes.
Many bugs have been resolved for SVG rendering and CSS layout. In addition, general bugfixes have been made to font and text handling, form fields, signing and validation, and more.
Other Stuff
As always, you can see the Changelog below to see the full rundown on what’s new in Core, and details of other improvements and bugfixes for this release.
If you use iText for digital signing, you may be interested in the Digital Signatures Hub which contains a ton of useful resources and examples.
Don’t forget that in addition to the resources on our Knowledge Base, on our GitHub you can find a ton of useful up-to-date samples in the following repos:
Java
.NET
If you want to create ZUGFeRD/Factur-X-e-invoices with iText Core, we have both Java and .NET code samples available targeting the current ZUGFeRD/Factur-X specification. They demonstrate how to embed the XML invoice data and add the metadata required for conformance. Read this article to learn more about ZUGFeRD/Factur-X, and using these code samples to create EN 16931-compatible e-invoices.
Bear in mind that our master
branch contains samples for the current stable release, while the default develop
branch is for the bleeding edge commits towards the next release.
Also, don’t forget to check out the release-related examples below, as well as the updated Core add-ons in the iText Suite we’ve released this time:
iText Suite 9.1 Releases
Release Related Examples
Downloads
iText Core – 9.1.0 (Java) | N/A | |||
iText Core – 9.1.0 (.NET) | N/A |
Changelog
New features
Improvements
Bug fixes
|
Deprecation of Older iText Versions
We're taking this opportunity to announce End of Life dates for deprecated iText versions. EOL for iText 7.1 will be April 2025, and iText 7.2 will be October 2025. As for iText 8.0, this will reach EOL in October 2026.
EOL for these versions means they will transition to maintenance mode, and only receive security patches. However, just as with iText 5 we will continue to provide support for our customers. Even though iText 5 has been in maintenance mode since 2016, we regularly release new versions to address CVEs and other security-related bugfixes. See CVEs or the iText 5-specific CVEs page for more information.
Contributors
We’d like to shout out the following contributors for this anniversary release:
Core team
Eugene Bochilo
Dmitry Chubrick
Angelina Pavlovets
Alexandr Pliushchou
Vitali Prudnikovich
Dmitry Radchuk
Andrei Stryhelski
Nanou Persoons
Glenn Volckaert
Alexandr Fedorov
Guust Ysebie
Yulian Gaponenko
Raf Hens
Product / Marketing
André Lemos
Ian Morris
Infrastructure / Devops
Marco Andries
Yauheni Borbut
Research
Michael Demey
Vlad Lipskiy
Input from other teams
Rainer Plöckl
Alison Anderson
Input from outside
Michael Klink
Matthias Valvekens