Release iText 5.2.1

New release for iText 5.2.1 and XML Worker, continue reading to find out more.

31st March 2012

New release for iText 5.2.1 and XML Worker, continue reading to find out more.

Release notes


All 5.2.x versions have been removed from our servers because of a serious flaw that was introduced when dealing with large PDFs!

I'm preparing to teach an iText class in Paris, and to give some demo's in Oakland. I'm currently making a new set of examples for some new chapters I'm going to write (maybe a third book, not a revision of the second edition, but a book with some advanced topics). Whilst making examples to explain the different options available in XML Worker, I found some bugs and I also thought about some functionality that was missing.

It would be a pity if I demonstrated my new examples in the next few weeks without having a new release with the latest changes, so that's why I made iText 5.2.1 one month after iText 5.2.0 was published. 

iText 5.2.1 Core

  • Changes made by Paulo Soares
    • PdfReader now ignores unreachable pages (this only happens with broken PDFs).
  • Changes made by Jeroen Nouws
    • PdfPublicSecurityHandler: added a check for InvalidKeyException when initializing cipher, if catched cipher will be initialized with the public key instead of the certificate (suggestion by Régis Ramillien).
  • Changes made by Eugene Markovskyi
    • Fixed the unescapeXML() method so that it skips invalid characters
  • Changes made by Alexander Chingarev
    • PdfNameTree: fixed crash on iterating through names tree when tree is splitted into several arrays (reported by Jason Rock who suggested a fix).
    • Added more convenient SimpleBookmark methods (e.g. to get child bookmarks of a certain outline object).
    • PdfName: added some new names
  • Changes made by Bruno
    • Bugfix AcroForms: In some cases, Adobe Reader X asks if you want to "save changes" after closing a flattened PDF form. This was due to the presence of some unnecessary entries in the /AcroForm dictionary (for instance added when the form was created with OOo).
    • XfaForm: Added a readOnly parameter to the fillXfaForm() method.
    • Extra ColumnText method to check if an Element is allowed in a column.
    • Paragraph: added a cloneShallow() method and a method that breaks up a Paragraph into a list of paragraphs, lists and tables.
    • ColumnText now breaks up a Paragraph before adding it to the stack. This prevents flattening of the content nested inside the paragraph (deep nesting still isn't supported).
    • Nested Paragraph objects can now have different values for the leading.
    • Files loaded from deep nested jars or ears in jBoss are referred to with vfszip: (Bug report #3512734)

XML Worker 1.1.3

  • Changes made by Eugene Markovskyi
    • Cleaning up different spacing issues.
    • Fixing justified alignment.
    • Now XMLWorker uses 1.2 multipliedLeading as default for Paragraph.
    • Cleaning up some minor issues regarding HTML tables.
  • Changes made by Bruno Lowagie
    • ParagraphCssApplier: if the fontSize < 0 (which doesn't make sense), all parameters are calculated using the wrong base.
    • Added a test to avoid a NPE in PathTag.
    • Added a convenience method to add a substitution font to XMLWorkerFontProvider.
    • Replacing String[] with String... in FileRetrieveImpl.
    • Adding a constructor to FileRetrieveImpl with a File object defining a root directory as parameter.
    • Adding a setFileRetrieve() method to the CSSResolver interface.
    • XMLWorkerFontProvider: With DONOTLOOKFORFONTS, you can avoid that the FontProvider spends time on registering font directories (you may not need them).
    • XMLWorkerHelper: If a charset is defined, you want to use it when parsing XML.
    • Added a convenience class that can be used to parse XML to a list of elements: ElementList
    • XMLParser: detecting the encoding didn't work in some environments because the mark was invalid (and a call to reset() failed). Now we expect a '>' in the first 1028 characters.
    • Added setChunkCssAplier() method to the CssAppliers interface

Compatibility Matrix

Use our easy compatibility matrix tool to find more information about the compatibility between your current iText Core/Community version and our add-ons and 3rd-party standalone applications

Add-ons 7.1.5

iText 7 Core


iText 7 Community



2.0.0 - 2.1.2



More add-ons 7.1.5










Still have questions? 

We're happy to answer your questions. Reach out to us and we'll get back to you shortly.

Contact us
Stay updated

Join 11,000+ subscribers and become an iText PDF expert by staying up to date with our new products, updates, tips, technical solutions and happenings.

Subscribe Now