Release iText 5.2.1
New release for iText 5.2.1 and XML Worker, continue reading to find out more.
release Notes:
IMPORTANT
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.
Changelog:
iText 5.2.1 Core
- Changes made by Paulo Soares
PdfReadernow ignores unreachable pages (this only happens with broken PDFs).
- Changes made by Jeroen Nouws
PdfPublicSecurityHandler: added a check forInvalidKeyExceptionwhen 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
- Fixed the
- 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
SimpleBookmarkmethods (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 areadOnlyparameter to thefillXfaForm()method.- Extra
ColumnTextmethod to check if an Element is allowed in a column. Paragraph: added acloneShallow()method and a method that breaks up aParagraphinto a list of paragraphs, lists and tables.ColumnTextnow breaks up aParagraphbefore adding it to the stack. This prevents flattening of the content nested inside the paragraph (deep nesting still isn't supported).- Nested
Paragraphobjects 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)
- Bugfix
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[]withString...inFileRetrieveImpl. - Adding a constructor to
FileRetrieveImplwith aFileobject defining a root directory as parameter. - Adding a
setFileRetrieve()method to theCSSResolverinterface. XMLWorkerFontProvider: WithDONOTLOOKFORFONTS, you can avoid that theFontProviderspends 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 toreset()failed). Now we expect a '>' in the first 1028 characters.- Added
setChunkCssAplier()method to theCssAppliersinterface