iText 7.1.5 is the fifth maintenance release for iText 7.1 Core/Community. We're also updating the add-ons pdfHTML to 2.1.2, pdfCalligraph and pdfSweep to 2.0.3, and pdfXFA to 2.0.1.
In total, about 50 tickets were closed, many of which were of significant complexity.
iText Core/Community 7.1.5 for Java - for .NET
kernel
-
We can now also read MMType1 fonts (we treat them like regular Type1 fonts)
-
We now support 24bit and 8bit depth Transparent PNG images
-
A fix for a very rare yet stingy memory leak
layout
-
It is now possible to add a Link element to a Canvas
-
Improvements to Font parsing and resolving
-
Reported issues with character spacing and text chunk repositioning
sign
-
Fix security incident where our signature checker is too lenient. The CVE number for this vulnerability is pending.
svg
-
The much requested feature clipPath is now supported
-
Path operator improvements
Other modules
Small fixes for forms, pdfa, styled-xml-parser, and barcodes. Fixes in io are for pdfCalligraph
pdfHTML 2.1.2 for Java - for .NET
Features
-
support for SVG encoded in a data-uri
-
support for a table's caption element
-
support for border-radius on img tags
-
support for value in list items
Fixes
-
incorrect page-margin box dimensions calculation
-
bugs related to font providers, RTL, and property inheritance
-
"!important" CSS attribute ignores "display:none"
pdfCalligraph 2.0.3 for Java - for .NET
-
Fix for when GlyphLine content throws an exception if it contains an empty ActualText field
-
Thai mark combinations are now supported
-
Improved support for Hebrew table nesting
pdfSweep 2.0.3 for Java - for .NET
pdfSweep now supports redacting all annotation types
pdfXFA 2.0.1 for Java - for .NET
4 fixes for JavaScript evaluation problems (1 specifically for .NET)
Bugs:
-
[DEVSIX-2530] : Unconventional Rectangle definition in flattening logic causes text to be flipped.
-
[DEVSIX-2526] : Pushbuttons with empty /V cause a NPE when regenerating appearance.
-
[DEVSIX-2418] : Form Flattening failing if SubType doesn't exist in the appearance stream.
-
[DEVSIX-2421] : Appearance Stream can be a PdfDictionary or a PdfStream.
-
[DEVSIX-2408] : Appearance isn't regenerated for radio buttons after setting any property.
-
[DEVSIX-2506] : Replacing glyhline's content may result in an exception if it has an empty actual text field.
-
[DEVSIX-2368] : Thai mark combinations not working for specific font.
-
[DEVSIX-2405] : PdfCanvasProcessor throws exception when an empty path is closed in content stream.
-
[DEVSIX-2374] : Form filling of empty text fields copied in smart mode results in wrong appearances.
-
[DEVSIX-2137] : Out of Memory when Copying an XObject in Smart Mode.
-
[DEVSIX-1934] : Add 24 and 8-Bit Depth Transparent Image to PDF.
-
[DEVSIX-1889] : NullPointerException on optional dictionary (PdfTextExtractor).
-
[DEVSIX-2517] : Several issues with PdfOutline processing .
-
[DEVSIX-2552] : iText applies the characteristics of a chunk (ascender/descender/width/...) to a line even if in the end the chunk is moved to another line.
-
[DEVSIX-2525] : FontProvider in layout cannot be used with font-names or aliases that contain symbols other than [A-Za-z0-9-_].
-
[DEVSIX-2429] : Image shouldn't be forced placed if some content was already placed.
-
[DEVSIX-2486] : Impossible to add a Link element on Canvas.
-
[DEVSIX-2414] : Character spacing is not considered while applying justification.
-
[DEVSIX-2228] : ArrayIndexOutOfBounds in TableRenderer.
-
[DEVSIX-1830] : Interaction between TabStop and Table.
-
[DEVSIX-2172] : PDF/A-1b CheckField always on.
-
[DEVSIX-1883] : Hebrew tables not nested correctly.
-
[DEVSIX-2587] : Do not create a new FontProvider instance on ProcessorContext#reset.
-
[DEVSIX-2481] : Fix "overflow: auto | scroll" handling together with floating children elements.
-
[DEVSIX-2386] : inline CSS: "!important" makes pdfHtml ignore display: none property.
-
[DEVSIX-2118] : Background from parent inline element does not have any effect on child inline element.
-
[DEVSIX-2101] : Orphan line allignment in justified Hebrew.
-
[DEVSIX-2115] : PdfHtml: Alignment issue with hebrew.
-
[DEVSIX-2002] : pdfHtml: process block elements inside a paragraph.
-
[DEVSIX-2455] : PdfHtml does not support value attribute in an ordered list.
-
[DEVSIX-2470] : pdfSweep doesn't redact the text which bbox is a degenerate rectangle.
-
[DEVSIX-2465] : pdfXFA: static text doesn't get updated after javascript evaluation.
-
[DEVSIX-2504] : pdfxfa .isNull not working.
-
[DEVSIX-1755] : Infinite loop in XFAFlattener#Flatten when flattening document in .NET.
-
[DEVSIX-2059] : pdfXFA and XFAWorker IndexOutOfBoundsException when flattening form.
-
[DEVSIX-2422] : iText incorrectly validates signatures for doctored PDF files.
-
[DEVSIX-2285] : ResourceResolver do not respect absolute path without `file:/` on unix.
-
[DEVSIX-2462] : Avoid calling platform dependent ToString() method after porting in SVG.
-
[DEVSIX-2442] : SvgProcessingException: The close path operator (Z) may not be used before a move to operation (M).
-
[DEVSIX-2356] : Don't trim text with length 1 in SVG.
New features
-
[DEVSIX-2469] : Support MMType1 font type as document font.
-
[DEVSIX-1980] : Support border-radius on <img> tags.
-
[DEVSIX-2067] : SVG: support clipPath.
Tasks
-
[DEVSIX-2433] : RTL list item markers are not placed correctly.
-
[DEVSIX-2096] : Support SVG encoded as base64 inside img tag.
-
[DEVSIX-2375] : Functional tests for SVG clipping path element.
Improvements
-
[DEVSIX-2533] : Using layout.Document to place elements on already flushed pages throws not clear exception.
-
[DEVSIX-2136] : layout and html2pdf : Distinguish between FONT and FONT_FAMILY properties.
-
[DEVSIX-1896] : Support "nowrap" value of "white-space" css property value.
-
[DEVSIX-1050] : Html2Pdf: compute page-margin box dimensions according to spec.
-
[DEVSIX-982] : Html2Pdf: Support <caption> inside a <table>.
-
[DEVSIX-2474] : pdfSweep annotations redaction: generalize basic support for all annotation types.
-
[DEVSIX-2604] : Update affinetransform javadocs to specify rotations are done in radians.
-
[DEVSIX-2472] : Refactor TabsTest's source/dest folder names to be the same as the test's name.