iText for .NET is the .NET version of the iText library, formerly known as iTextSharp, which it replaces. iText represents the next level of SDKs for developers that want to take advantage of the benefits PDF can bring. Equipped with a better document engine, high and low-level programming capabilities and the ability to create, edit and enha
It's already Q2 of 2022, and so we're pleased to announce the release of iText Core 7.2.2. Your favorite PDF library for Java and .NET (and more!)
The System.Text.RegularExpressions dependency is now explicit rather than implicit, and uses version 4.3.1.
We've made some improvements to iText's parsing logic for PDF cross-reference structures. This was to prevent the potential for a PDF's structure to be maliciously created to cause infinite loops or other issues.
We've also fixed a bug relating to CFF font parsing. As noted in the specification, CFF is a font format which was developed by Adobe to act as a compact container for one or more fonts by using lossless compression. In cases when a font's CID does not correspond to its GID, iText could incorrectly read its cmap values resulting in incorrect glyphs being displayed in PDF viewers. To address this, the font parsing logic has been rewritten to account for fonts where the glyph IDs do not match the CIDs, and will now handle them in the correct and expected manner.
This release also addresses two CVE issues (CVE-2022-24196, and CVE-2022-24197) which were disclosed. See the Changelog or the linked issues for more details.
iText Core 7.2.1 is the latest release of your favorite PDF library for Java and .NET (and more!), and the first scheduled maintenance release for iText 7.2. It brings further improvements for SVG conversion, supporting default values for the d attribute of the path tag and improving PDF output, which in previous versions could be rendered incorrectly by some PDF viewers, such as Safari and View (macOS), and Documents (iOS). As usual, pdfHTML also benefits from any SVG handling changes.
As for PDF merging functionality, we should note more intelligent outline handling, which is no longer as strict and can fix some syntax mistakes in the Outlines hierarchy. For instance, absence of the parent attribute which is mandatory in the PDF specification is not an issue anymore.
We'd also like to thank the iText community for its contributions, specifically; realityone, with a really important and impactful fix for incompatibility with PDF standards in our codebase and kohler, whose PR helped us a lot in our efforts to process PDF outlines better. We are happy to see that after 21 years there is still so much interest in improving the iText library.
You can also expect other changes such as a number of bug fixes, plus some significant improvements to the codebase.
The iText 7.1.17 release is a maintenance release with a security bug fix for a vulnerability that allowed the use of GhostScript in an unpredictable manner. At the same time, we are also releasing iText 7.2.0, the next major version of iText. In addition to this bug fix, 7.2.0 contains a great deal of other improvements.
We are pleased to announce the next major version of iText 7; iText 7.2.0.
The most important change in this release of iText 7 is the new Unified License Mechanism, where we can have independent licenses for iText 7 Core, iText 7 add-ons and other products, send statistics to the server, allow users to easily check used volume, and more. As you might guess from the name, the Unified License Mechanism affects the entire iText 7 Suite, so please also check out the iText add-ons which have received updates along with this release.
As this is a major release, please note that we have removed deprecated and redundant methods from the API. This will allow us to better maintain the code and more easily add new functionality in the future.
From this release we are bumping our minimum supported version of the .NET Framework from 4.5 to 4.6.1. The main reason for this change is that it allows the use of the Microsoft.Extensions.Logging framework which is built into .NET Framework 4.6.1, in iText-related code. We expect this to be more popular for our .NET community, since this framework is more modern and flexible, and, most importantly, secure.
Separately, it should be noted that this release contains a security bug fix for a vulnerability that allowed the use of GhostScript in an unpredictable manner.
As for the rest of the changes, 7.2 brings a number of bugfixes, plus some significant improvements to the codebase. Some of these may not yet be visible but will have an important effect on the further development of the iText 7 Suite, its security, and performance.
The iText Core 7.1.16 release is already our third release for 2021 and it brings a few important improvements, making our SDK even more flexible, customizable and productive.
We continue to improve the SVG support in iText. For this release we made the TextLeafSvgNodeRenderer
class easily extendable, so you can implement your own conversion logic. This can be beneficial for processing complicated SVG images and make code clearer.
Another important improvement in this release is refactoring the PdfSigner
class responsible for digital signatures. Specifically, the customization of a signature's appearance has been significantly simplified. This is implicitly related to SVG support, as from now on using SVG images for a signature's appearance will not require so much effort on the part of developers.
As for performance improvements, we should note the parsing of Metadata has been optimized, and the fixing of a couple of bugs that could cause deadlocks and memory leaks.
Besides that, support of non-encrypted PDF files with encrypted attachments, and ICCBased colorspaces has been added.
iText Core 7.1.15 is the second quarterly release for 2021 of our multifunctional PDF SDK.
Important notes:
We've started preparations for the release of our next major version (7.2) so in this release:
In addition, this release brings many important changes to iText 7. While many of these changes relate to the flexbox support that we've added to pdfHTML 3.0.4, there is also a number of substantial changes which explicitly affect iText 7 Core behaviour. They may not be immediately obvious, but are still significant and involved a great deal of effort from our team:
moveto
command specification.Last but not least; huge amounts of kudos to @borislucas-dev, @trumpetinc, and @dajoropo for their efforts in making iText even better. Thank you for all your pull requests; we feel extremely proud to still have so many active contributors, even after 21(!) years of existence as an open-source product.
The iText Core 7.1.14 release is the first quarterly release of 2021 of our innovative PDF library.
We've continued to further increase the support for SVG, since as noted in previous releases this is an important topic for us.
The new release brings support for the <pattern>
element which benefits both Core, and pdfHTML (3.0.3). This element is used to define a graphics object which can be "tiled" to cover an area. In addition, we also added the support of font-relative units for SVG and fixed the stroke-width processing within <use>
tags.
We've also made improvements to our Acroform support: the missing fields border styles as Beveled, Underline and Inset are now available in iText Core.
A few changes have been made to OpenType Font (OTF) processing which are especially important in the context of Japanese, Chinese and Korean languages. Previously OpenTypeFontTableReader.getLanguageRecord()
only allowed fetching the default language system for a given script, which was not sufficient for CJK regional variant substitution. Now, it's possible to fetch OTF language records by tag.
Note: .NET Standard 1.6 support was deprecated as of the 7.1.13 release, and so from this release we’re targeting NET Standard 2.0
<pattern>
element<use>
tagsThe iText Core 7.1.13 release is the fourth quarterly release of 2020 of our innovative PDF library.
This Core release brings initial support for <symbol>
in SVG, which benefits both Core, and pdfHTML (3.0.2). As we've mentioned previously, we continue to work on increasing support for SVG since it is an important topic for us.
Improvements have been made to the way MemoryLimitsAwareHandler works, and we've also made important changes regarding how word-wrapping is handled in the context of languages that use special scripts, such as Thai, Khmer, Lao, and Myanmar.
Besides that, we investigated and fixed a potential vulnerability in the way iText used to parse XMP metadata which affects both Core and the license library, improved the PDF merging so that it does not ignore OCG dictionaries anymore, and added two new Image filters (DCT and JPXDecode).
As for the rest of the changes, expect the typical assortment of performance improvements and convenience additions.
The iText Core 7.1.12 release is the third quarterly release of 2020 of our innovative PDF library.
This Core release brings initial support for <linearGradient>
in SVG and linear-gradient()
in CSS, which is something that both Core, and pdfHTML (3.0.1) will benefit from. SVG is an important topic for us, so be sure to check our future releases, as even wider support is coming.
As for the rest of the changes, expect the typical ongoing mix of yet even more performance improvements and convenience additions.
A big shout-out to @evileye-uk, @tompecina and @hady-malekpour for their pull requests! It is pretty amazing that after 20 years as an open source project, we still get contributions.
iText 7.1.11 brings the second quarterly release of 2020 for the iText 7 family.
Other than Core (this project), we're also releasing at the same time, the following open source projects pdfHTML (major 3.0 release!) and RUPS.