Skip to main content
Skip table of contents

Release iText 5.4.3

We're launching the release of iText 5.4.3 and as promised, we've been working on PAdES-5 and PDF/A. We already supported signing XFA forms using XML-DSig, now we also have support for signing using XAdES (which is required to meet the PAdES-5 standard). For the moment, only BES is supported (EPES will follow).

In the next couple of releases, we'll continue working on PDF/A, more specifically on PDF/A-2 and PDF/A-3. Again, this doesn't mean, we don't support PDF/A-3 yet, as a matter of fact, iText is ready for the German ZUGFeRD standard.

Release Notes

iText Core 5.4.3

  • We've been working on PAdES-5 and PDF/A.
  • Now we also have support for signing using XAdES (which is required to meet the PAdES-5 standard). For the moment, only BES is supported (EPES will follow).
  • As for PDF/A, iText will now make sure you can create documents that are fully compliant with PDF/A-1. That was already possible in the past, but iText didn't check if all the requirements for compliance were met, that was the responsibility of the developer. With the new release all these checks are done by iText.
  • We switched from using BouncyCastle 1.48 to using BouncyCastle 1.49.
    • We added some new functionality that allows you to reuse the existing signature appearance when signing a document, and to change the text for "location" and "reason" in the default appearance of a signature.
    • We added a constructor to PdfReader that makes it easier to work in partial read mode.
    • The parser functionality can now also detect gray scale, RGB and CMYK colors (no indexed colors yet).
    • We received a contribution from Deutsche Bahn introducing new rowspan functionality and a new table event that gets triggered after a table is split.
  • We also removed some stuff, such as the _LANDSCAPE constants in the PageSize class and the /ProcSet entry in the page resources.
  • We discovered that:
    • the replacePushbutton() method didn't work in append mode,

    • a PdfDictionary didn't know its type when the dictionary was obtained from an existing PDF,

    • a PDF that uses ETSI extensions didn't add those extensions to its root dictionary,

    • it was possible to create a check box that didn't comply with ISO-32000-1,

  • We've fixed all these issues, as well as the following bugs:

    • PdfSmartCopy had some problems that were introduced in an attempt to improve the performance of the concatenating process in one of the previous releases.

    • the getCheckField() method in RadioCheckField returned a constant value instead of the actual value.

    • The Base64 encoded timestamp information needs to be a single line, and in our case, the signature was broken up into several lines.

XML Worker 5.4.3

XML Worker 5.4.3 only brings some minor changes:

  • the SVG package was removed (it never worked and we didn't find any code contributors to help us fix it) and
  • we fixed a problem with tables that caused an ArrayIndexOutOfBoundsException.

RUPS 5.4.3

  • As for RUPS: it was released because we finally fixed the problem with pages not showing up in the pages table.

Changelog

iText Core 5.4.3

  • Changes made by Alexander Chingarev

    • Added Adobe's XML core library.

    • PDF/A-related updates:
      • PdfAStamper throws exception when trying to open non-PDF/A compliant document.
      • Added PDF/A-1 verifications for file structure, graphics, transparency, annotations, actions, interactive forms and tagged PDF.
    • Prevent writing structure element attributes if the PDF version is lower than 1.7.
    • Link annotations aren't correctly tagged according to Acrobat verification tool.
    • ZapfDingbats based characters for representing check marks are replaced with self-contained appearance streams.
  • Changes made by Pavel Alay
    • Improve handling of circular references in PdfSmartCopy, improve performance of PdfSmartCopy, clear serialized objects in addPage() method in case new PdfReader.
    • XFA signing:
      • small changes to XmlDSig.
      • Add support of XAdES BES signatures.
      • Add XmlDSig verification tool.
      • Fix "setIdAttribute" issue.
  • Changes made by Eugene Markovskyi
    • Bugfix: tagged output causes inconsistent XMP metadata
    • BaseFont: introduced a constant for the PARAGRAPH_SEPARATOR character.
    • FontSelector: refactored the processing of characters to deal with a newline/carriage return problem.
    • Added tagging for Form XObjects.
  • Changes made by Raf Hens
    • Synced English and Dutch error messages.
    • Change copyright year in the Version class.
    • Code contribution Deutsche Bahn Systel GmbH, Thorsten Seitz:
      • Improved splitting for tables with row spans where splitLate is true.
      • Added an event that is triggered after a table is split, allowing modification to the part of the table that goes to the next page.
  • Changes made by MichaĆ«l Demey
    • Fix in RadioCheckField: getCheckField() passed a constant parameter to setCheckType() instead of the checkType variable.
  • Changes made by Bruno
    • Fix AcroFields: the replacePushbutton() method didn't work in append mode.
    • PdfDictionary: Introduced a checkType() method that looks for the /Type entry if dictionaryType is null. This way the methods isFont(), isPage(), isPages(), isCatalog() and isOutlines() also work in case the PdfDictionary is obtained from an existing PDF instead of an element of a PDF that is being built from scratch.
    • Digital signatures: allow people to define a different caption for the signing reason and location in the default signature appearance using the setReasonCaption() and setLocationCaption() methods.
    • PdfSignatureAppearance: Introduced a setReuseAppearance() method that allows the reuse of the existing appearance of a signature field.
    • RadioCheckField: According to ISO-32000-1, the value of a check box needs to be either Off or Yes.
    • Added ETSI developer extensions when using signature functionality that requires adding those extensions.
    • Added a PdfReader constructor that makes it easier to work in partial reading mode.
    • PageSize: deprecated special _LANDSCAPE values.
    • Stop adding /ProcSet entry to page resources as this entry has been deprecated since PDF 1.4.
    • The PDF parsing functionality now supports parsing colors in the DeviceGray, DeviceRGB and DeviceCMYK color space (indexed color spaces aren't supported yet).
    • BaseColor: the toString() method now returns a hexadecimal value.
    • Fixed bug in TSAClientBouncyCastle: lines may not be broken when encoding a password to Base64 (reported by Michael Klink)
    • Upgrade to BouncyCastle 1.49.

XML Worker 5.4.3

  • Changes made by Bruno Lowagie
    • Removed the SVG code; it never worked and we didn't find any interested contributors to fix it.
  • Changes made by Eugene Markovskyi
    • Fixed the ArrayIndexOutOfBoundsException caused by tables.

iText RUPS 5.4.3

  • Changes made by Bruno Lowagie
    • Reverted a fix applied in 5.4.2: the page table still wasn't correct and is now being created in a different way.
JavaScript errors detected

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

If this problem persists, please contact our support.