Skip to main content
Skip table of contents

Release iText 5.3.4

iText 5.3.4 and XML Worker 1.2.1 have been released! Read all about it in the changelogs.

Release Notes:

iText 5.3.4 Core

I needed the release because I'm going to present the white paper on digital signatures next week. In my presentation, I'll discuss PAdES-4 (LTV), and I've written the code to verify Document-level timestamps and signatures with verification related info stored in Document Security Stores less than a month ago.

You can also see a glimpse of two of our big goals for 2013 in the changelog:

  1. We'll take a closer look at unstructured data: we can parse a PDF and extract the text, but then what? How do we get more information from a PDF than just some plain text?

  2. We're preparing for high-level support for Tagged PDF. This should significantly reduce the effort needed to create documents that are PDF/UA or PDF/A Level A compliant. This functionality is a work in progress. The only thing that should work right now, is the code that merges the structured tree when concatenating tagged PDFs.

There were some minor bug fixes, the most important one being the fix that gives PdfReader access to some objects that were previously 'invisible' due to a bug. Especially in XML Worker, you'll see some changes that are less important for iText core and iText's XML Worker, but that were crucial for our closed source project XFA Worker.

We noticed that we forgot to release iText 5.3.3 on the Maven Central Repository. We're sorry for that. We'll skip that release, and release iText 5.3.4.

Changelog

iText 5.3.4 Core

  • Changes made by Paulo Soares
    • The signature date when invoking getSignDate() will now be the timestamp date (if available).
    • Appended xref streams could hide new objects, resulting in errors parsing an existing PDF. When trying to retrieve an existing object, iText returned null instead of the object.
  • Changes made by Kevin Day
    • Added low-level filtering hook to LocationTextExtractionStrategy.
  • Changes made by Alexander Chingarev
    • Bugfix in OCSPVerifier (a typo was causing false negatives)
    • Preparing better support for creating tagged PDF using high-level objects (work in progress; DO NOT USE UNTIL FINISHED)
  • Changes made by Denis Koleda
    • Concatenation of tagged PDFs: PdfCopy now also concatenates the structured tree (using a new class named PdfStructTreeController).
    • Introduced the concept of TABSPACE in the Chunk class.
    • Preparing better support for creating tagged PDF using high-level objects (work in progress; DO NOT USE UNTIL FINISHED); added IPdfStructureElement.
  • Changes made by Eugene Markovskyi
    • Avoiding NullPointerException in ColumnText.
    • Fixing NoSuchElementException in ColumnText.
  • Changes made by Bruno
    • Added extra methods to PdfAStamper to allow people to sign PDF/A files.
    • Added support for 8 bit images that are compressed using TIFF predictor 2 (suggestion by Paul aka apkeeley on SourceForge). There were some errors in the patch, but Bruno fixed them.
    • Added a getRotation() method to PdfImportedPage so that you can ask the page if it's rotated or not.
    • Fixed a header problem adding a table which spans multiple pages using table.setComplete(false);. Bug reported by Mark Smith on the mailing list (2012-10-31). The problem occurred when the last row added before calling document.add(table) was the last row in a page. Fix needs more testing.
    • Digital signatures:
      • CrlClientOnline cached CRL URLs. There are situations where you don't want that.
      • LtvVerification: added logging information, and introduced a class VerificationException
      • Wrote a class named LtvVerifier along with classes to verify Certificates against a keystore, CRLs, and OCSP responses: CertificateVerifier is the superclass of RootStoreVerifier, OCSPVerifier and CRLVerifier. These classes can be used to create a list of VerificationOK objects.
      • CertificateVerification: extra method that doesn't check any CRLs.

XML Worker 1.2.1

  • Changes made by Alexander Chingarev
    • Replaced an ArrayList with a LinkedList in the Tag class.
  • Changes made by Eugene Markovskyi
    • Fixed a problem caused by combinations of table and div tags.
    • Added a new createSelectors() method to CssSelector.
JavaScript errors detected

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

If this problem persists, please contact our support.