Release iText 7.1.11
iText 7.1.11 brings the second quarterly release of 2020 for the iText 7 family, with SEVEN (7) out of EIGHT product releases. You know what? We could even round that off, as the only product that we're not releasing, pdfSweep, also benefits from changes to Core.
Included is some pretty cool stuff (even a new icon for RUPS!), though we are particularly excited about the brand new version 3.0 of iText pdfHTML (check out the Release notes for that).
Breaking Changes
License Key
Our licensing mechanism (iText License Key Library & iText License Key Library Volume), will now require for "Volume Subscription" license holders, that the reporting will either have to be remote (our most convenient way for usage reporting) or local. This should make reporting your usage much easier and more flexible. If nothing is specified, remote will be the default. For more information, please check our Volume FAQ.
iText pdfHTML
- the Ledger page size will now be portrait oriented by default (if you prefer landscape, you just need to specify it);
- the rendering of HTML as PDF files now has a closer behavior to how a web browser would render the content. If you would like to maintain the previous behavior with pdfHTML 3.x, then we've provided you with the following code:
Release Related Examples
GitHub | Maven | NuGet | Artifactory | |
---|---|---|---|---|
iText 7 Core – 7.1.11 (Java) | link | link | N/A | link |
iText 7 Core – 7.1.11 (.NET) | link | N/A | link | link |
iText License Key Library – 3.1.0 | N/A | link | link | link |
iText License Key Library Volume – 3.1.0 | N/A | link | link | link |
iText pdf2Data – 2.1.7 (Java) | N/A | N/A | N/A | link |
iText pdf2Data – 2.1.7 (.NET) | N/A | N/A | link | link |
iText pdfCalligraph – 2.0.6 (Java) | N/A | link | N/A | link |
iText pdfCalligraph – 2.0.6 (.NET) | N/A | N/A | link | link |
iText pdfHTML – 3.0.0 (Java) | link | link | N/A | link |
iText pdfHTML – 3.0.0 (.NET) | link | N/A | link | link |
iText pdfRender – 1.0.1 (Java) | N/A | link | N/A | link (CLI) |
iText pdfXFA – 2.0.6 (Java) | N/A | link | N/A | link |
iText pdfXFA – 2.0.6 (.NET) | N/A | N/A | link | link |
iText RUPS – 7.1.11 | link | link | N/A | link |
In alphabetical order, here's an overview of the changes that each product has with this quarterly release:
- A bug fix with XFDF as squares and circles could not be made optional;
- More robust PNG handling;
- Better handling of form fields (specifically when /TI value is present, and when using SetValue for a choice form field);
- Improved table splitting;
- Improve RegexBasedCleanupStrategy (Java/.NET) (although a Core change, it benefits iText pdfSweep) when white spaces are available (thank you vemoo for the PR (#1 and #2)!);
- Added control over widow/orphan content (we have an example for Java and .NET (C#) on this new functionality).
- More stable data extraction in cases of non-critical errors in PDF syntax.
- Better Arabic (fix in Tanween characters rendering, and some characters that were being truncated at the end);
- Improved Khmer script rendering.
- Support for the line-height property for inline-level elements as well (in addition to improved support for block-level elements);
- Improve line height calculation differences between browsers and PDF rendering (this is a breaking change, check above for how to revert the behavior);
- Improve creation and/or merging of outlines;
- Support for widows and orphans properties.
- We now have a CLI (Command Line Interface) wrapper around pdfRender, so you can use it outside of a Java only environment.
- New icon!
- Better handling of lists in rich text fields;
- Better support for <draw>, <float> and <subformSet> tags.
Also, a couple of points related to our licensing and volume counting mechanisms:
- Expiration checks are now locale-independent (this is relevant if you are using a Trial license, or have an expiration date on your commercial license);
- As referred on the Breaking Changes, if you have a "Volume Subscription License", you will have to specify if you want to do your volume counting locally, or remote. You can check our Volume Counter FAQs for further details.
New Features
- [CORE] Improve creation and(or) merging of outlines for documents created in pdfHTML
- [CORE & PDFHTML] Basic implementation of orphan/widow control
- [LICENSE] Implement EventDataHandler for stable local volume counting files writing and rotating
- [LICENSE] Implement user-side configuration of volume counting library mode (public API, ENV and license file)
- [LICENSE] Fail license check for volume license in AWS mode if AWS is not available on startup
- [LICENSE] Enable local volume counting file mode
- [PDFHTML] Added support for the Line height property
- [PDFRENDER] Introduce CLI to simplify usage from non-Java environments
Improvements
- [CORE] itext7-dotnet PR #6 (and i7n-pdfsweep PR #1): Fix missing index and newlines in cleanup regexes (thank you vemoo!)
- [CORE] itext7 PR #44: Fix null pointer in PdfAcroForm (thank you craftmaster2190!)
- [CORE] itext7-dotnet PR #4: Path transformation to userspace (thank you Moneema14 for the inspiration!)
- [CORE] While checking whether a cell with a fixed height should be split, float are compared without any epsilon value, which may cause issues because of float precision inaccuracy
- [PDFHTML] Get rid of the difference in line height calculations between HTML and PDF
- [PDFRENDER] Improve log and exception messages
- [RUPS] Update logo
Bugs
- [CORE] Make fringe attribute in xfdf squre and circle annotations optional
- [CORE] Several bugs in processing of /TI for choice fields
- [CORE] setValue method works incorrectly for a choice form field
- [CORE] NotoSerifKhmer is rendered poorly
- [CORE] GposLookupType5: mark to ligature positioning results in duplicating the mark
- [CORE] Fix issue with Khmer text being incorrectly formatted
- [CORE] Adding a PNG to pdf creates unopenable pdf document
- [CORE] The FillOpacity is not set correctly on the GraphicsState of TextRenderInfo
- [LICENSE] Ensure licensekey expiration checks are locale-independent (Thai Buddhist calendar, Arabic calendar)
- [PDFCALLIGRAPH] New glyphs which have been added while applying positioning features do not affect the start/end of the appropriate glyphline
- [PDFCALLIGRAPH] Arabic: glyph is truncated
- [PDFCALLIGRAPH] iText printing two arabic Tanween characters( Ù‹ ) instead of one
- [PDFRENDER] pdfRender fails to correctly render PDF files encrypted with AES256
- [PDFRENDER] pdfRender fails to process text in Myriad Pro
- [PDFRENDER] pdfRender jar contains unnecessary dependencies (layout, forms, licensekey,...)
- [PDFXFA] <float> tag value from FormState is not applied to a field
- [PDFXFA] Form state is not applied for <draw> elements
- [PDFXFA] Subforms are unexpectedly multiplied because default relation of subformSet is not respected
- [PDFXFA] Fix difference between Java and .NET version of XFAWorker/pdfXFA for particular template flattening
- [PDFXFA] Flattening TextFields with rich text in them with nested lists is poorly handled