iText 5.5.4



iText 5.5.4

  • Changes made by Alexander Chingarev
    • Ignore broken annotations when flattening FreeText annotations.
    • Do not add DigestValue, DigestLocation and DigestMethod fields when signing PDF documents of version 1.6 and higher as it breaks PDF/A-2 conformance.
    • PdfAChecker threw PDF/A-2 conformance exceptions when a PdfAction chunk was added to the document.
    • CompareTool refactoring: methods for object comparison have been made public.
    • Improved the TextRenderInfo class regarding the calculation of widths of text snippets and unsupported encodings.
    • Fixed an issue when searching for a CJK compatible font.
    • Added a marker for those parts of the code that aren't compatible with Android.
    • Fixed the exception "alt.entry.should.specify.alternate.description.for.figure.element" for PDF/A-1a file creation.
    • Fixed java.lang.IndexOutOfBoundsException when validating signature conformance to PDF/A-2 (reported by Axel Burri)
    • Added ZUGFeRD extension levels (basic, comfort, extended).
    • Added PDF "clean up" functionality that can be used for redaction.
  • Changes made by Eugene Markovskyi
    • Fixed a text overlapping issue in the Div layout. The issue used to occur if a paragraph overflowed a page bottom boundary only with "spacing after".
    • Fixed an issue with fonts that weren't being embedded in specific circumstances.
    • Added support for RTL in a bulleted list and processing of the "dir" attribute in the table-tag (XML Worker). Improved table alignment in case of RTL direction.
  • Changes made by Alexey Subach
    • Improved Barcode128: add possibility to strictly use provided code set (A, B, C). AUTO mode is left for backwards compatibility as default mode.
    • Added an isWordSplit() method to ColumnText to check if any word was split into several parts (if there was not enough width for the whole word).
    • Support of justified alignment for right-to-left text.
  • Changes made by Pavel Mitrofanov
    • Added new pdf names (RO, REDACT, OverlayText, Repeat) and changed the return type of the PdfContentByte.addFormXObj() method so that it returns a PdfName instead of void.
  • Changes made by Bruno Lowagie
    • For some reason, we explicitly forbid to change the dimensions of a push button. However, I do not remember this reason. See also iText: button resize affects label on StackOverflow.
  • Changes made by Michaël Demey
    • Making sure that the getDigestAlgorithm() returns SHA1withRSA if the constructor with params (byte[], byte[], String) is used.
    • Updated PdfStamperImp so that a PDF is automatically tagged when a Tagged PDF is being manipulated (instead of having to enable tagging manually).
    • Fixed a typo in the string that is used to indicate a col span: it was Colspan; it's now ColSpan.
    • Bugfix: the length of a stream could be defined as a negative length.
    • An incomplete PdfPTable would sometimes ignore headers and drop the first rows of each page.
  • Changes made by Benoït Lagae
    • Some changes to PdfGraphics2D concerning manual creation of bold & italic fonts when there are incomplete font sets (e.g. only plain & bold, or only plain & italic).
    • PdfGraphics2D: moved the underline a bit lower so that manually created bold fonts do not overlap with the underline.
    • PdfGraphics2D: removed restriction that a bold font will only be simulated if we have a custom strokeWidth.
    • Added the PdfName for the Summary tag that can be set to a PdfPTable in a Tagged PDF document.
    • In Tagged PDF, a PdfPTable must have an Owner entry (/O) in its element dictionary for Acrobat to consider the table valid, otherwise the Summary check will fail.
  • Changes made by Kevin Day
    • Make it possible for users who already have a Random Access File to still take advantage of the createBestSource() logic

XML Worker 5.5.4

  • Changes made by Eugene Markovskyi
    • Added support for RTL in a bulleted list and processing of the "dir" attribute in the table-tag (XML Worker). Improved table alignment in case of RTL direction.
  • Changes made by Michaël Demey
    • Image alt text is now set onto the image object when creating Tagged PDF.
  • Changes made by Benoït Lagae
    • HtmlPipelineContext now uses the ImageProvider when it is explicitly set, not the default AbstractImageProvider.
    • XML Worker now recognizes dir="rtl", both as an HTML attribute and a CSS property, for <tr> and <td> tags, in addition to the already existing <table> functionality
  • Changes made by Bruno Lowagie
    • Many questions on StackOverflow reveal a need to parse a snippet of HTML into a list of Element objects. That's why we've added a convenience method to XMLWorkerHelper that takes a String of HTML and a String of CSS and returns a list of Element objects.

iText RUPS 5.5.4

  • Changes made by Michaël Demey
    • Avoiding npe's when dealing with invalid images.
    • Making file a local variable and not a static variable
    • Adding a closeOperation on startApplication

XFA Worker 5.5.4

(This is a closed source project on top of iText and XML Worker.)
  • Changes made by Eugene Markovskyi
    • Fixed invalid table rendering (header) and page breaks
    • Changed the bounding box calculation on the page border. Our behavior differs from what Acrobat does, but it helps us to get element boundaries that look better.
    • Table cell borders were not smoothed out after splitting.
    • Fixed a text overlapping issue in the Div layout. The issue used to occur if a paragraph overflowed a page bottom boundary only with "spacing after".
    • New XFA tag structures added to JS scripting.
    • Fixed a problem with invalid footers.
    • Support for optimized re-layout after event scripts evaluation. Split the JS evaluation into several stage: initialize. Ready and etc.
    • Fixed unnecessary extra border line created in table.
    • Fixed an issue with fonts that weren't being embedded in specific circumstances.
    • Added support for RTL in a bulleted list and processing of the "dir" attribute in the tables.
    • In specific cases, XFA Worker dropped sections when flattening PDF.
    • Fixed dynamic rows rendering problem (tables).
    • FormCalc2JS: Wrapping of accessors. "accessor" converted to ""accessor""
    • FormCalc: "Null" is not a defined exception
    • Improved handling of overflow tag.
    • Fixed data formatting issue. "s" is added to the value.
    • Fixed JS DataBinding. Incorrect rawValue.
    • JsInstanceManager: addInstance method adds new node to the end of parent node.
    • Fixed some additional RTL issues
    • References like [parentElement].variables.[variableName] were not resolved properly
    • HAlign should not be applied to positioned Draw element
    • Page break was not triggered when on the first page.
    • Fixed a problem involving missing empty pages.
    • Fixed a font-related problem causing a "Too Many Open Files" exception.
    • Fixed incorrect position of the leader element.
    • Fixed problem with incorrect date value and extra empty line.
  • Changes made by Alexey Subach
    • Code128 Barcode differs from what can be viewed in Adobe Acrobat. Improved barcode128 support.
    • Do not skip empty patterns.
    • Speeded up Rhino script evaluation.
    • Fixed incorrect table cell rotation and borders, text wrapping in header.
    • Fixed invalid barcode rendering. Do not draw barcode with empty data.
    • Support for numeric field with pattern num.integer{}. Default numeric pattern has been added.
    • Dynamic ordered list generation.
    • Add dataNode JS property - build Data nodes.
    • Apply dynamic margins in Positioner.
    • Fixed incorrect JS structures that were generated when child have names same as parent's properties.
    • Fixed invalid border rendering in specific table instances.
    • Refactoring to new FormNode structures.
    • JS view scope of untitled subform children.
    • More precise border drawing for comb element.
    • JavaSript: Accessors that start with "_".
    • Support for Instance Managers for subforms.
    • Added xfa.datasets.* to the tree.
    • Simulate Acrobat behavior with $ in number pattern when data is not correctly formed.
    • Add new nodes to prototype template.
    • Add $data object to resolve datasets correctly.
    • FormCalc2JS: Variable without "var" keyword "s=$". Check for undefined values assignment.
    • Add Len FormCalc function.
    • Fix HasValue FormCalc function.
    • New app configuration added, host config modified.
    • Resolve instance managers from unnamed subforms correctly
    • Fix instance managers for multiplied subforms.
    • Fixed incorrect processing of zero{} pattern.
    • Added support for reading attachments: import attachment names into XFA fields.
    • Added support for XFA app and Host configuration.
    • JsInstanceManager: add removeInstance method.
    • Deep nodes resolving from unnamed subforms in searchByName() method.
    • Better support of items elements resolving (resolve both bound and display items by SOMexpression)
    • Removed invalid property definitions.
    • Implemented the fillColor property for subforms/fields.
    • Improved ResolveNodes: resolve expressions like #items[*].
    • Improved working with items (bound and display values).
    • Fixed incorrect Date Formatting in case only a value for the year was used.