In 2013, we had 6 iText releases, numbered from iText 5.4.0 to 5.4.5. For the first release of 2014, we thought it would be a good idea to switch to iText 5.5.0. That way, we get an idea of the release year, just by looking at the number. But let's take a look at what's more important: what's new in this release?
We received plenty of feedback regarding the accessibility functionality that was introduced last year. The PDF/UA spec is relatively new and the ISO committee is still fixing a couple of issues that were discovered in the first version. The same goes for iText.
We've also released XML Worker, iText RUPS and XFA Worker (the latter is a closed source project).
Release Notes
iText 5.5.0 Core
-
We discovered that backgrounds added to
Chunksweren't marked as artifacts, attributes for Form XObjects weren't written correctly, and so on. -
We also received some bug reports after the
PdfCopyupdate, especially when merging forms. We've fixed these and a couple of other bugs. For example: there were problems if theNeedAppearancesflag was set for one of the original forms. -
Furthermore, we've won another battle in the never-ending struggle to support different flavors of the TIFF format. We've solved 56 issues in total!
-
We've extended the testing infrastructure. The existing
CompareToolclass has been moved to a separatetestutilspackage. -
And we've implemented the suggestion made by Valentin Ivanov and David Hook, allowing the use of an external decryption process (sorry for the delay, guys).
RUPS 5.5.0
-
RUPS was originally an acronym for Reading and Updating PDF Syntax, but up until now, it wasn't possible to Update a PDF file.
-
Michaël Demey has now introduced some functionality that allows you to change a dictionary (add, update, delete keys) and to save an altered PDF. He added more interactivity (short cut keys) and a way to consult the content of a PDF page as plain text.
XFA Worker 5.5.0
-
As for XFA Worker, more and more customers are using dynamic forms as templates and XFA Worker to populate these templates with data with a PDF (or even a PDF/A Level A and PDF/UA) documents as final result.
-
We also have an increasing demand for trial licenses, resulting in excellent reports of small features that aren't supported yet.
-
In answer to the requirements of our paying customers, we've started developing
formcalcsupport (thesum()method and some arithmetic functions). -
We received kudos for our work on XFA Worker from our customer at the US Courts, and we suddenly realized that prospective customers weren't able to see the progress on this product.
-
With this release, we're also publishing the changelog for this add-on for iText.
Changelog
iText 5.5.0 Core
-
Changes made by Alexander Chingarev
Fixed some accessibility issues:-
Adding the PDF/UA identifier to the XMP metadata.
-
The background rectangle of a
Chunkis now marked as an artifact. -
Attributes for Form XObjects (
PdfTemplate) are now being written. -
Introduction of
Layoutfor ownership. -
Don't generated nested tags in Tagged PDF page content (to make sure the Read Out Loud functionality works as expected)
-
Support for
BBoxattribute of structure element -
Support for "O" attribute for structure element
-
TrueType symbolic fonts should not be decoded when extracting text from PDF and encoded when writing text to PDF.
-
Bugfix
PdfCopy: not checking if a page reference is null, ruined tags when concatenating tagged PDFs (reported on Stack Overflow; fix suggested by Michael Klink). -
Fixed issue with wrong appearance streams when merging documents containing same AcroField names.
-
Fixed merging issues when using
PdfCopyin full compression mode.
-
-
Changes made by Pavel Alay
-
Moved the
CompareToolclass to a separatetestutilspackage and introduced a generic superclass for tests. -
Updated the
CompareToolfunctionality, adding methods to compare structure and content of Tagged PDFs, document info, links,... -
Extended the
toString()method of thePdfAnnotationclass. -
Fix for bug with
checkEmbeddedfile inPdfA3Checker -
Fix for issue with Pdf/A cached objects in
PdfAStamperreported on Stack Overflow
-
-
Changes made by Eugene Markovskyi
-
PdfDocument: allowing character and word spacing in a broader context. -
Fixed some accessibility compliance issues, adding an
isInline()method to theIAccessibleElementinterface.
-
-
Changes made by Alexey Subach
-
Introduced a new
PdfReaderconstructor with a new interfaceExternalDecryptionProcess, allowing to use BC'sRecipientandRecipiendId(based on suggestions by Valentin Ts. Ivanov and David Hook). Fixed bbox in image tag attributes.
-
-
Changes made by Raf Hens
-
Fixed a problem with
PdfCopyand forms: enableNeedAppearancesin the output when one of the input documents has it enabled. -
Fixed a problem with the
getTiffImage()method in theImageclass. -
Fixed a problem with keywords in XMP metadata: Dublin Core subject should be used for "keywords"
-
Fixed comma and semi-colon handling in XMP keywords
-
Improved producer line functionality
-
Improved the OSGi headers
-
Added method to set raw data stream as-is
-
-
Changes made by Kevin Day
-
CMapAwareDocumentFont: if font space width isn't defined, use the default width for the font. -
PdfContentReader: avoid exception when displaying an empty dictionary.
-
-
Changes made by Michaël Demey
-
Reworked old Info Dictionary code to avoid a
ClassCastExceptioninPdfStamperImp. -
Added custom split character functionality to
DefaultSplitCharacter. -
Images (more specifically TIFFs): Renamed
handleIncorrectImagetorecoverFromImageErrorand changed the flow to a more logical flow according to its name. -
Added a workaround for parsing certain TIFFs with compression 3. The workaround is applied using the
recoverFromErrorBoolean. -
Imageclass: Removed useless pageNumber variable (and calculations performed to create it) -
Imageclass: Removed use of deprecated RandomAccessFileOrArray constructor. -
Updated javadocs for
onStartPage()method inPdfPageEvent: it now mentions previously undocumented, but expected behavior for the first page. -
Added a value for the PieceInfo key to
PdfName -
Added
PdfName.PIECEINFO -
Add
document.isOpen()check toPdfCopy.addDocument()
-
-
Changes made by Bruno
-
CompareTool: Updated an exception message that wasn't very clear. -
Bugfix
Pointclass: Using the wrong variables in the translate() method (reported by Michael Klink).
-
XML Worker 5.5.0
-
Changes made by Eugene Markovskyi
-
Letter-spacing support (for XFA Worker)
-
-
Changes made by Raf Hens
-
Support for element.class and element#id selectors
-
iText RUPS 5.5.0
-
Changes made by Michaël Demey
-
Fixed a
NullPointerExceptionin the mouse listener class. -
Fixed
ArrayIndexOutOfBoundsExceptionsin the PDF object panel. -
Fixed an
ArrayIndexOutOfBoundsExceptionthrown when reloading a document when a selection has been made in the PDF Object panel. -
Added autoselection when right clicking the mouse
-
Added functionality to save the opened PDF file to disk
-
Added functionality to delete entries in a dictionary
-
Added basic functionality to add a string to a dictionary
-
Added functionality to add entries (string, array,...) to a dictionary using
PdfLiteral; excluded are:nulland indirect references. -
Added functionality to update values in dictionary entries.
-
Added keyboard shortcuts for opening and closing files
-
Added a plain-text representation of the loaded PDF
-
XFA Worker 5.5.0
(This is a closed source project on top of iText and XML Worker)
-
Changes made by Eugene Markovskyi
-
Accessibility compliance issues (see iText's new
isInline()method in theIAccessibleElementinterface) -
Fixed incorrect display of in-line totals
-
Fixed incorrect height multi-line text
-
Fixed incorrect date formatting
-
Fixed positioning error for sub-forms
-
Fixed some minor JavaScript issues when flattening XFA
-
Fixed incorrect pagination of positioned layout with Group elements
-
Fixed table layout issue
-
Implemented JavaScript
resolveNodes()method; improvedresolveNode()logic; resolved indexed element. -
Letter-spacing support
-
JavaScript: Calculate tag support
-
-
Changes made by Pavel Alay
-
Fixed issue with date pattern
-
Fixed issue with choice button
-
Fixed issue with LocalePipeline
-
Changed default locale to en-US
-
Fixed issue with empty pattern
-
Fixed issue with unbreakable space as grouping symbol
-
Fixed number input and output formatting
-
Added arc element support
-
Add ChoiceList support
-
Add basic formcalc support:
sum()and arithmetic operations. -
Add full support of
relevantattribute. -
Add support of
LegacyPlusPrintflag
-
-
Changes made by Alexey Subach
-
Move
num2date,date,DateFmtfunctions toJsXfa.
-
-
Changes made by Alexander Chingarev
-
Allow the output of tagged PDF
-
Fixed "check tagged structure" errors
-
Make sure we don't generate nested tags in tagged PDF page content
-