PDFreactor Changelog

What's new in PDFreactor 11.6.11 (2024-03-22)

Mar 28, 2024
  • The following issues were fixed:
  • Inline elements with border-radius nested inside link elements can cause exceptions. (#9201)
  • Page breaks in row-spanning table cells can cause exceptions. (#9203)
  • Applying display styles to page margin boxes can cause exceptions. (#9111)
  • Some valid custom XMPs are rejected as invalid and the exception does not contain useful information. (#9169)
  • Specifying an ICC profile that is not CMYK for color conversion causes internal exceptions instead of specific ones. (#8959)
  • In some cases grid cells can overflow their pages instead of being moved to the following page. (#8869)
  • In some cases the content of multi-column spanning elements is unnecessarily placed on the following page. (#9202)
  • When segmentation is enabled images that are used repeatedly may be embedded into the resulting PDF multiple times, unnecessarily increasing its file size. (#9178)
  • The following dependencies were updated:
  • PDFreactor Web Service only:
  • com.fasterxml.jackson.*-2.15.3 to 2.17.0 (CVE-2023-35116)
  • org.springframework.*-5.3.31 to 5.3.33 (CVE-2024-22243)

New in PDFreactor 11.6.10 (2024-01-11) (Mar 28, 2024)

  • PDFreactor Web Service only:
  • Jetty application server 9.4.51.v20230217 to 9.4.53.v20231009 (#9150, CVE-2023-44487)
  • com.fasterxml.jackson.*-2.15.2 to 2.15.3
  • org.apache.cxf.*-3.5.6 to 3.5.7
  • org.springframework.*-5.3.28 to 5.3.31

New in PDFreactor 11.6.9 (2023-09-21) (Sep 21, 2023)

  • The following issues were fixed:
  • The layout of adjacent floats may not terminate under very specific conditions. (#9061)
  • The following features were implemented:
  • Box-shadows, text-shadows and filter drop-shadows are no longer rendered if their colors are all fully transparent. This significantly improves performance and output file size for certain frameworks, e.g. Bootstrap 5.2. (#9058)

New in PDFreactor 11.6.8 (2023-09-05) (Sep 5, 2023)

  • The following issues were fixed:
  • Priorities of connection rules in security settings are reversed. Under specific circumstances this can lead to URLs being erroneously allowed. (#9055)

New in PDFreactor 11.6.7 (2023-08-25) (Aug 25, 2023)

  • The following issues were fixed:
  • Complex multi-column layouts may not utilize available space for additional columns. (#9049)
  • Font fallback from specific fonts may cause superfluous line-breaks. (#9046)
  • Font fallback is not applied to supplementary plane code points. (#9033)
  • Applying the "clip-path" property with an "inset" value that uses "calc" may cause exceptions. (#9025)
  • Negative word-spacing erroneously affects empty inline elements at the start of their lines. (#9024)
  • ICC Profiles of grayscale images are not included in output PDFs. (#9016)
  • Named strings may be resolved incorrectly on empty pages. (#9010)
  • Relative positioning is incorrect when "calc" functions are used for "right" or "bottom". (#9009)
  • The glyphs of some macOS system fonts are not used. (#8878)
  • In rare cases segmentation can cause significantly increased memory consumption. (#8876, #8877)

New in PDFreactor 11.6.6 (2023-07-26) (Jul 26, 2023)

  • The following issues were fixed:
  • Bidirectional text affected by "dir" attributes or "unicode-bidi" styles is sometimes reordered incorrectly.
  • The PDFreactor RPM installer overwrote all files when updating, including files that should be processed as config files. (#8710)
  • The following dependencies were updated:
  • org.bouncycastle.*-jdk15on-1.69 to *-jdk18on-1.75 (CVE-2023-33201)
  • com.fasterxml.jackson.core.*-2.13.4 to 2.15.2
  • com.fasterxml.jackson.core.jackson-databind-2.13.4.2 to 2.15.2 to match other Jackson dependencies
  • PDFreactor Web Service only:
  • org.apache.cxf.*-3.5.5 to 3.5.6
  • org.springframework.*-5.3.22 to 5.3.28 (#8982, CVE-2023-20860, CVE-2023-20861, CVE-2023-20863)
  • com.fasterxml.woodstox.woodstox-core-6.2.6 to 6.5.1 (CVE-2022-40152)

New in PDFreactor 11.6.5 (2023-03-29) (Mar 29, 2023)

  • The following issues were fixed:
  • Characters from the default CJK font can be misaligned when using Java 9 or newer. (#8934)
  • The Exceeding Content observer does not ignore running elements. (#8933)
  • Underlines of complex scripts, like Arabic, can be too long. (#8925)

New in PDFreactor 11.6.4 (2023-03-16) (Mar 16, 2023)

  • The Exceeding Content observer can generate false positives for certain styles, including the default styles for footnotes. (#8923)
  • PDF signature form fields are not tagged in a PDF/UA compliant way. (#8921)
  • ":first-letter" ignores the properties "text-shadow" and "box-shadow". (#8906)

New in PDFreactor 11.6.3 (2023-03-07) (Mar 7, 2023)

  • The following changes were implemented:
  • Updated included Jetty application server to 9.4.51.v20230217.
  • The following issues were fixed:
  • Updated dependency "CXF" of PDFreactor Web Service to 3.5.5 (CVE-2022-46363, CVE-2022-46364, #8891)
  • Converting documents without a license key can lead to memory leaks. (#8919)
  • Creating object URLs in JavaScript can lead to memory leaks. (#8885)
  • Creating inspectable documents can cause exceptions for certain CSS values like the calc function. (#8914)
  • Using MathML when converting to continuous raster image output causes exceptions. (#8872)
  • Page breaks inside absolutely positioned elements can differ based on media size and position origin. (#8751)
  • Text in SVGs converted to raster image output is erroneously not bold in some cases. (#8895)
  • <span> elements do not have an HTMLSpanElement prototype in JavaScript. (#8874)
  • The Image constructor in JavaScript does not create an <img> element. Also the width and height properties of JavaScript Image objects return incorrect values when that element is not part of the DOM and layout. (#8898)

New in PDFreactor 11.6.2 (2022-12-13) (Dec 13, 2022)

  • The following issues were fixed:
  • Under certain rare circumstances the PDFreactor Web Service can run out of file handles. (#8866)
  • JavaScript errors can cause exceptions when using JavaScript debugging. (#8816)
  • Setting "list-style-position: inside" on empty list items causes exceptions. (#8847)
  • Documents containing "nth-child" or similar CSS selectors and certain DOM structures are excessively slow when updating these structures via JavaScript. (#8850)
  • Updated dependency "Jackson Databind", as well as related "Jackson" libraries, to 2.13.4.2 (CVE-2022-42003)
  • Updated dependency "Woodstox" of PDFreactor Web Service to 6.4.0 (CVE-2022-40152)

New in PDFreactor 11.6.1 (2022-11-16) (Nov 16, 2022)

  • The following issues were fixed:
  • Conversions that are performed after a timed out conversion may throw exceptions and fail in some cases. (#8840)
  • In certain cases a single-line column flex item that can not be fragmented and is moved to the next page causes incorrect vertical alignment of the previous flex items. (#8830)
  • In rare cases a flex item that causes a page break causes a second break before the next flex item. (#8836)
  • The JavaScript "Date" constructor cannot parse ISO dates with milliseconds that are not 3 digits. (#8841, #7939)

New in PDFreactor 11.6.0 (2022-11-09) (Nov 9, 2022)

  • The following issues were fixed:
  • If the first word in a line with "word-wrap: break-word" overflows and consists of multiple elements
  • (e.g. a <span> starts inside it), it is erroneously broken to the next line at the boundary of the element. (#8828)
  • In rare cases, documents that reset page counters on named pages and are changed via JavaScript
  • may cause exceptions being logged and have incorrect page numbering. (#8805)
  • Negative bottom margins on a block elements may cause premature page breaks. (#8825)
  • Forcing multi-column breaks may cause superfluous layouts with no impact on the result. (#5946)

New in PDFreactor 11.5.1 (2022-10-17) (Oct 17, 2022)

  • Asynchronously converted documents cannot be retrieved from storage under certain circumstances. (#8817)
  • Table cells with row or column spans can cause exceptions during JavaScript processing. (#8808)
  • Setting the display style "inline-block" on footnote calls causes exceptions. (#8807)

New in PDFreactor 11.5.0 (2022-09-20) (Sep 21, 2022)

  • The following features and changes were implemented:
  • The PDFreactor Web Service now defaults to a flat structure for temporary documents,
  • improving support for document folders shared between instances. (#8783)
  • Barcode dimensions do not always match the visual size of the content. (#8732)
  • The JRE bundled with certain installer packages was updated to 17.0.4.1.
  • The realobjects/pdfreactor Docker image now includes a JRE instead of a JDK.
  • Also moved from AdoptOpenJDK 15.0.2 to Adoptium Eclipse Temurin 17.0.4.1. (#8788)
  • Updated realobjects/pdfreactor Docker image from Oracle Linux Server 8.3 to 9.0.
  • Various dependency updates.
  • The following issues were fixed:
  • Updated Jetty server of PDFreactor Web Service. (CVE-2022-2047, CVE-2022-2048)
  • Using the "clip-path" property causes exceptions on boxes with zero "border-radius". (#8797)
  • Extremely low font sizes in scaled down documents may cause exceptions. (#8780)
  • Certain rare table constructs can cause exceptions. (#8756)
  • Percentage widths of images with max-height are ignored in some situations. (#8790)
  • In some cases percentage widths in single column flex items are resolved incorrectly. (#8775)
  • Certain combinations of SVG effects are tiled incorrectly. (#8696)
  • PDFs used as images or background images are misaligned in some cases. (#8760, #8789)
  • Clipping/cropping paths of images are misaligned for background images. (#8655)
  • Gradient backgrounds are missing for line-split boxes. (#8768)
  • Empty CSS media query lists are not supported. (#8767)
  • Command line only applies debug mode when a debug dump directory is specified. (#8791)
  • Linux systems without a font configuration installed cause exceptions. (#8615)
  • File locks are retained after conversions merging existing PDFs. (#8787)

New in PDFreactor 11.4.8 (2022-07-07) (Jul 7, 2022)

  • The following issues were fixed::
  • Floats do not influence the height of surrounding inline blocks. (#8704)
  • Boxes always overflow to the right when they have an explicit width wider than their container, which is incorrect in RTL contexts. (#8711)
  • In rare cases, elements that contain only out-of-flow elements can cause incomplete layouts. (#8739)
  • The paint order of independent inlines as well as flex and grid items is incorrect, which can negatively affect selections in PDFs. (#8747)
  • Trying to get PageDescriptions of empty pages causes exceptions. (#8743)
  • Scale content functionality is not affected by inline elements containing line breaks and affects log pages. (#7072, #7074)
  • In the Preview application synthetic bold text can overlap with the following text. (#8728)
  • Reaction to thread interruption is too slow for some parts of the conversion. (#7017)
  • PDF segmentation may abort with an exception if the ID of a 'target candidate' element contains quotation marks. (#8738)
  • Using Systemd logger on some systems can cause an exception on initialization. (#8723)
  • Documentation is unclear on default font mappings and conformance validation. (#7907, #8661)

New in PDFreactor 11.4.7 (2022-05-10) (May 10, 2022)

  • The following issues were fixed:
  • SVGs in page margin boxes cause conversions to terminate with exceptions. (#8689)
  • Bookmarks in iframes cause conversions to terminate with exceptions. (#8700)
  • PDF conformances that prohibit transparency cause conversions to terminate with exceptions when no license key is used. (#8662)
  • Text in iframes does not reflect all styles, e.g. ignores letter-spacing, when using Java 9 or newer. (#8637)
  • Updated included Java, if any, to mitigate multiple CVEs.
  • Updated Jackson dependencies to mitigate CVE-2020-36518.
  • Updated Spring dependencies of PDFreactor Web Service to mitigate CVE-2022-22968.
  • Updated CXF dependencies of PDFreactor Web Service to mitigate CVE-2021-40690.

New in PDFreactor 11.4.6 (2022-04-01) (Apr 1, 2022)

  • The following issues were fixed:
  • Updated Spring dependencies of PDFreactor Web Service to mitigate CVE-2022-22965.

New in PDFreactor 11.4.5 (2022-03-08) (Mar 8, 2022)

  • The following issues were fixed:
  • Selection of internal font as fallback for missing characters is sometimes incorrect, causing unexpected results, like spaces being too wide. (#8659)
  • Absolutely positioned boxes without specified horizontal or vertical positions, and consequently to be placed at their static positions, are placed incorrectly when their parents are otherwise empty inline elements. (#8649)
  • The paint order for absolutely positioned elements is incorrect when their parents are inline elements, which may cause them to be erroneously hidden behind other elements. (#8624)

New in PDFreactor 11.4.4 (2022-02-17) (Feb 17, 2022)

  • The following issues were fixed:
  • Specifying PDF/UA conformance without PDF/A conformance or an ICC profile causes color keywords to be interpreted as CMYK even when RGB is specified. (#8645)
  • Debug dump ZIPs are written even when they are empty. (#8641)
  • The combination of running elements and SVGs requiring font fallback can cause conversions to fail with exceptions. (#8640)
  • Baselines of table cells are not determined correctly if their rows contain additional cells with only floated elements. (#8636)
  • Clickable areas of SVG links containing transforms may be incorrect. (#8628)
  • The JavaScript methods "getComputedStyle" and "ro.layout.getContent" do not recognize pseudo element names that start with one or two colons. (#8626)
  • PDF links with certain complex shapes can cause an exception to be logged. (#8625)
  • Shear transforms, especially rotations, cause images to look blurry. (#8608)
  • Invalid document URLs cause exceptions if the debug setting "forceResult" is enabled. (#8603)
  • Image recompression has no effect on grayscale images. (#8600)
  • Table cells with row spans fragmented over multiple pages can cause conversions to fail with exceptions. (#8597)

New in PDFreactor 11.4.3 (2022-01-27) (Jan 27, 2022)

  • PDFreactor does not support certain third-party class loaders, e.g. Quarkus. (#8630)
  • Intermittent exception when shutting down the PDFreactor Web Service. (#8631)

New in PDFreactor 11.4.2 (2021-12-09) (Dec 9, 2021)

  • The following features and changes were implemented:
  • The human readable part of barcodes can now be disabled via the proprietary style "-ro-barcode-human-readable-position: none". (#8589)
  • The following issues were fixed:
  • Certain multi-colum layouts containing spanners may cause non-terminating conversions or incorrect layouts. (#8571, #8588)
  • Changing text content inside tables via JavaScript can cause incorrect layouts as well as logged exceptions. (#8580)
  • Certain SVG links, including those created by Highcharts since 9.3.2, can cause exceptions. (#8578)
  • Links with a width or height of 0 can cause exceptions. (#8572)
  • Specifying a non-existing page for "PDF as image" causes exceptions. (#8576)
  • Arabic shaping is not applied for the "-ro-glyph-layout-mode" default value "auto" when using Java 12 or older. (#8567)
  • "list-style" CSS shorthand property is resolved incorrectly, which can cause unnecessary connection attempts. (#8582)
  • When using hyphenation certain text can overflow its line. (#8577)
  • Using recompression on grayscale images can cause output that is too dark.
  • This also affects the alpha channels of recompressed images. (#8584)
  • The clickable areas of links in SVGs with a viewBox or complex nesting are determined incorrectly. (#8535)
  • The proprietary CSS property "-ro-links" does not affect replaced elements, e.g. barcodes, correctly. (#8592)
  • "Pages per Sheet" settings no longer have default values. (#8542)
  • Error pages for license issues are not written for image output formats. (#8585)
  • The "systemd" logging functionality is initialized on systems that don't support it, causing errors to be logged. (#8587)

New in PDFreactor 11.4.1 (2021-11-17) (Nov 17, 2021)

  • The following features and changes were implemented:
  • Flex layout now supports the values "left" and "right" for the CSS property "justify-content". (#8546)
  • The following issues were fixed:
  • In certain documents, setting a left or right page break on the last element can cause a blank page to be appended to the end of the document. (#8506)
  • When CSS custom properties have font relative values, they are resolved against the element where the property is set, instead of where the CSS variable is actually used. (#8521)
  • Justified text causes unintended fragmentation of PDF attachments and links at word boundaries. (#8528)
  • Length of leaders is incorrect when leader characters are affected by kerning. (#8530)
  • Multiple layout passes (e.g. due to JavaScript) can cause inconsistent and incorrect layout in documents with footnotes, including too much whitespace or missing footnotes. (#8531, #8532, #8538)
  • When a CSS function is missing its closing bracket, the document conversion may not terminate. (#8533)
  • PDFreactor Web Service server parameter "hideVersionInfo" does not hide the version in PDF metadata. (#8540)
  • Page margin boxes are no longer created if they have "width" and "height" and no "content" property. (#8544)
  • In rare cases, a table with collapsed borders may be moved completely to the next page instead of breaking between two of its rows. (#8550)
  • Using segmentation mode may cause incorrect order of PDF bookmarks. (#8554)
  • Certain PDFs cause exceptions when merged using PDFreactor. (#8556)
  • PDFreactor throws exception if a page margin box with "width" and "height" but no "content" property is used. (#8557)

New in PDFreactor 11.4.0 (2021-09-24) (Sep 24, 2021)

  • The following features and changes were implemented:
  • Improved determination of dimensions of SVGs without explicit width and height. (#8491)
  • Updated the column count computation of multi-column elements to the latest specifications. See the migration guide on how to mitigate possible changes. (#8512)
  • The content of multi-column elements is no longer visually clipped to its column and thus is allowed to overflow into the next column, as per the specification. This can be reverted via the custom CSS property "-ro-column-clip". (#8494)
  • Improved handling of the parameters of the CSS function "var". It is now possible to specify a fallback that contains commas or spaces. (#8482)
  • Improved quality of image downsizing for image output, especially for factors of more than 2. (#8498)
  • Grid layouts now support baseline alignment. (#8395)
  • Table root elements now support the "min-width" and "max-width" CSS properties. (#8450)
  • The "safe" and "unsafe" keywords of the alignment properties are now supported in all formatting contexts. (#8518)
  • Barcode content taken from the element content now collapses spaces based on the white-space CSS property. (#8448)
  • Improved error handling for barcodes. (#8447)
  • If necessary, interactive PDF forms now use a fallback font that can display most of the content at conversion time. (#8429)
  • PDF viewers now correctly highlight attachment annotations. (#8488)
  • Form fields support additional flags as well as the "maxlength" HTML attribute. (#8434)
  • Form field annotations now contain a reference to the page they are laid out on. (#8496)
  • ICU4J missing or being outdated is now logged. (#8445)
  • Added HTTP2 module to Jetty (see start.d/http2.ini). (#8475)
  • Various improvements to multi-column, flex and grid layouts as well as fixed tables inside flex layouts.
  • Various engine updates.
  • Various dependency updates. (#8476)
  • The following issues were fixed:
  • JavaScript Dates before the year 1600 are inaccurate, breaking Plotly.js graphs that contain dates. (#8408)
  • The "removeAttribute" function does not clear inline style or class list. (#8511)
  • Certain combinations of multi-column inside a region lead to columns not being laid out. This also prevents the detection of exceeding content of this column. (#8501)
  • Floated boxes with a height of zero should have no influence on the position of following floated boxes. (#8514)
  • Flex container with negative margins and border-box sizing causes issues with the sizing and placement of its items. (#8508)
  • Multi-column layouts are not supported inside grid items. (#8437)
  • Table row groups cannot be used as running elements if the preceding group is a header or footer group. (#8432)
  • PDFreactor throws exception if a page break is caused by a table with cells with absolutely positioned content only. (#8444)
  • PDFreactor throws exception if a multi-column layout is scaled down with a small value for -ro-scale-content. (#8315)
  • PDFreactor throws exception if a running element uses block elements inside inline elements. (#6215)
  • PDFreactor throws exception in certain complex documents. (#8505)
  • The CSS function "rgb" causes an exception if there are missing parameters set using the "var" function. (#8483)
  • CSS style properties of a page margin box are not applied, if they use CSS variables. (#8486)
  • In certain cases, the usage of a cross-reference at a break, whose target is in the same paragraph, causes an exception. (#8451)
  • CSS style sheets that cannot be loaded via @import rules cause an exception. (#8461)
  • Font names cannot be properly read by Adobe Illustrator. (#8516)
  • Updated Xerces, solving CVE-2012-0881. (#8489)
  • Security setting "hideVersionInfo" does not hide the version in PDF metadata. (#8490)
  • Node.js client separates cookies in HTTP header with comma instead of semicolon. (#8497)
  • Systemd logger does not log any conversion information. (#8466)
  • Pages Per Sheet mode must be more robust towards erroneous input. (#8455)

New in PDFreactor 11.3.1 (2021-08-10) (Aug 10, 2021)

  • Tables with auto margins and percentage widths are not centered if they are nested within another table with percentage widths. (#8467)
  • Images floated to top or bottom as page floats have a height of zero. (#8453)
  • Having a region layout container on a page can make the footnote area on that page disappear. (#8458)
  • Floating an element to the top as a page float causes text on that page (or column) to no longer snap to its line grid. (See manual for details.) (#8454)
  • Page breaks are applied to the contents of absolutely positioned elements too early if bottom margins, borders or paddings are set on any of their ancestors. (#8449)
  • In rare cases, a page break in the content of a multi-column element causes an exception. (#8471)
  • A rare element structure causes an exception in certain cases. (#8479)
  • Style of empty trailing "tspan" SVG element following space is applied to previous character. (#7011, #8464)
  • RGB raster image in SVGs are color space converted for CMYK output PDFs, even when such conversion is not enabled. (#8438)
  • PDFreactor Web Service Monitoring API does not return IDs of queued conversions. (#8456)
  • Documentation of server parameter "systemdLogLevel" is incorrect. (#8462)
  • Documentation of barcode Code 3 of 9 is incorrect. (#8480)

New in PDFreactor 11.3.0 (2021-06-30) (Jun 30, 2021)

  • The following features and changes were implemented:
  • PDFs as image sources are now also displayed in image output and the Preview Application. (#6921)
  • Added preliminary support for WebP, lossy simple VP8 only. (#7795)
  • Added support for the validation of PDF/UA documents. (#8269)
  • Added support for URL rewrites via the API property "urlRewriteSettings". (#8352)
  • Form fields, incl. signature fields, can now be set to "read-only", "required" or "no-export" via the proprietary CSS property "-ro-pdf-form-field-flags" or matching HTML attributes. (#8372)
  • Improved determination of clickable areas of links and added the proprietary CSS property "-ro-link-area" for further configuration. (#8368)
  • The scroll coordinates for bookmarks and internal links are now configurable via the proprietary CSS property "-ro-destination-area", including improved default behavior. (#8371)
  • Implemented the prefixed CSS property "-ro-overflow-clip-margin". (#8387)
  • Added support for the FusionCharts JavaScript library. (#5348)
  • Significantly improved performance of documents with very large floated elements. (#7798)
  • PDF conformance adapting configuration options is now logged in detail.
  • Added support for piping (stdin in addition to stdout) for the Java Command Line API. (#8351)
  • Added support for file URLs outside of asset packages (when security settings allow it). (#8339)
  • Logging to "journalctl" is now supported and can be configured through the "systemdLogLevel" parameter. (#8276)
  • Improved PDFreactor client async samples so that they use connection settings objects. (#8381)
  • Added basic Docker documentation to PDFreactor manual. (#8380)
  • The netstandard2 pdfreactor.dll is now located in netstandard2/lib instead of netstandard2/bin. (#8355)
  • The following issues were fixed:
  • Non-content strings in PDF tagging, like Alt-texts, ignore non-Latin characters. (#8344)
  • Base64 data URIs fail to decode if they contain spaces. (#8423)
  • Redirected document URLs are not used as default base URL. (#8397)
  • Hyphenation of some non-lowercased words is incorrect. (#8415)
  • JavaScript "String()" and "new String()" ignore "toString" functions. (#8436)
  • PDF tagging for elements with z-index can cause exceptions. (#8413)
  • PDFreactor throws an exception when a block element inside an inline element is removed via "display: none". (#8200)
  • An exception occurs in some documents when inserting content into a multi-column element via JavaScript. (#8426)
  • XMLHttpRequests blocked by security settings can cause Java exceptions instead of handling the error in JS. (#8407)
  • PDFreactor throws an exception when a document is manipulated via JavaScript in a special way. (#8417)
  • Percentage max-widths of replaced elements inside table cells are not supported. (#8389)
  • Percentage values inside certain absolute positioned elements are not resolved correctly. (#8369)
  • The percentage width of a fixed table is wrong if the table is part of a shrink-to-fit layout. (#8193)
  • Certain floated elements are positioned incorrectly and have a zero width if spread across pages. (#8427)
  • In rare cases multi-column elements are moved to the next page too early. (#8431)
  • In certain contexts too much content is moved to the next page due to bottom margins. (#8435)
  • Absolutely positioned elements inside relatively positioned elements overflow the page instead of being fragmented correctly. (#8441)
  • In some cases the "break-inside: avoid" style set on an ancestor of a replaced element flex item is ignored. (#8394)
  • The proprietary CSS pseudo-class selector ":-ro-no-content" does not match elements that contain zero-width or other spaces. (#8377)
  • Content with zero width is still underlined. (#8378)
  • There are thin lines between box-shadows and elements with opaque background. (#8412)
  • Overriding the tagging of list items can cause invalid PDF tag tree structure. (#8406)
  • PDF/UA unnecessarily disables encryption and PDF scripting. (#8404)
  • Error policies should not be disabled when document is converted in debug mode. (#8341)
  • Link text spread across lines creates multiple link annotations instead of one with multiple areas. (#8439)
  • PDF signature fields are not properly registered as form fields and missed by 3rd party tools when there are no other form elements. (#8382)
  • When a user without user.home runs PDFreactor the font cache is created in the root directory. (#8420)
  • Node.js client cannot stream directly into Express response objects. (#8374)
  • Update Jetty XML configuration files to match application version. (#8273)

New in PDFreactor 11.2.2 (2021-04-28) (Apr 28, 2021)

  • The following features and changes were implemented:
  • Declaring a form element as a signature field now disables the form annotation. (#8364)
  • Single-byte encoding specified inside document with apparent multi-byte encoding is now ignored in favor of heuristic detection. (#8361)
  • Updated dependency ICU4J to version 69.1, which includes Unicode CLDR 39.
  • Various minor dependency updates, incl. Jetty.
  • The following issues were fixed:
  • When SVGs without any specified dimensions are flex items their size may be incorrect. (#8362)
  • Images are erroneously influenced by floats in different containers. (#8348)
  • Percentage sizes relative to flex items are not resolved correctly if the item is not stretch aligned. (#8356)
  • In some cases, a float right after a page break is not positioned correctly, overlapping text. (#8366)
  • Color space conversion replaces CSS spot colors with their converted alternative colors (instead of preserving the spot colors and converting only the alternative colors). (#8373)
  • Changing the inline style of an element via JavaScript can lead to incorrect named pages. (#8345)
  • In certain documents, an exception can occur when text flows around a floated box directly after a page break. (#8358)

New in PDFreactor 11.2.1 (2021-03-24) (Mar 24, 2021)

  • The following issues were fixed:
  • Images with fixed widths and auto heights in flex layouts have zero heights after certain breaks. (#8335)
  • Nested grid containers directly in flex containers cause unexpected page breaks. (#8329)
  • Merging specific PDF documents requires excessive amounts of time and memory. (#8347)
  • When using Java 16, JavaScript methods that accept functions as parameters are not called correctly.
  • Vertical coordinates of PDF tag BBox attributes are offset. (#8346)
  • The order of bookmarks erroneously depends on the stacking contexts of elements. (#8338)
  • The content of block elements in inline link elements is not clickable. (#8333)
  • User specific font folder is not scanned for system fonts on Windows. (#8340)
  • Documentation of PDFreactor Webservice callback states incorrect time units. (#8331)

New in PDFreactor 11.2.0 (12902) (Feb 25, 2021)

  • Highcharts 9.0 is now supported.
  • The CSS property "outline-offset" is now supported. (#8310)
  • Improved support for the min-content and max-content property values in conjunction with grid layouts.
  • URLs with "about" scheme are now handled specifically.
  • The PDFreactor Webservice Jetty now contains a sample "proxy.ini". (#8321)

New in PDFreactor 11.1.0 (12856) (Feb 5, 2021)

  • The following issues were fixed:
  • PDFreactor throws exception when an element inside a multi-column has "display" set to "table". (#8304)
  • URLs containing line breaks are deemed invalid instead of being cleaned up. (#8294)
  • Style sheets referenced via @import rules and containing BOMs have their first rule ignored. (#8271)
  • Borders are missing in some cases where the height of their elements is zero. (#8302)
  • Images with percentage max-heights do not contribute to grid row height. (#8286)
  • Height of image is zero when it has a max-height with a percentage "calc" function. (#8277)
  • Block image does not shrink-to-fit in table if an explicit width is set on its cell. (#6638)
  • Items of a wrapped column flex container, with auto margins in cross direction, are sized as if stretched.
  • Size of flex items is incorrect in certain cases when using percentage values. (#8101, #8244)
  • Absolutely positioned images with percentage max-height lose their aspect ratio in grid layouts. (#8281)
  • Break styles on elements inside floated elements are ignored. (#8172)
  • Illegal property values interrupt parsing of style sheets of external SVGs. (#8154)
  • The "overflow" CSS property may disable overprinting for following elements. (#8278)
  • Canvas arcs ending in quarter circles cause additional lines to be drawn. (#8047)
  • Table captions are not handled properly if their caption-side differs from their DOM position. (#7634, #7667)
  • Bottom caption is not displayed correctly in tables broken across multiple pages or columns. (#7243, #7435)
  • Unexpected page break before table if it contains a bottom caption as first child of the table element. (#7633)
  • Node.js client does not handle exceptions. (#8303)
  • Java client cannot send document containing non-UTF-8 encoded special characters. (#8248)
  • Java client throws exception when Exceeding Content feature is used. (#8230)
  • PDFreactor does not warn that merging PDFs is not possible when using an invalid license key. (#8288)
  • Segmentation does not handle server timeouts, potentially keeping failed conversions in memory. (#8285)
  • Additionally, it now preloads up to 100 MB of the input document to avoid server timeouts.
  • The following features and changes were implemented:
  • When specifying a local debug directory, debug files are now zipped and dumped regardless of whether the conversion finishes successfully or not. (#8287)
  • A JSON schema for the data models consumed or produced by the PDFreactor Web Service is available under /rest/schema. (#8191)
  • Security connection rules can now filter connections depending on their resource type.
  • Blob URLs are no longer subject to connection security rules, similar to data URIs.
  • The CSS property "gap" is now supported for flex layout, on top of grid and multi-column. (#8146)
  • Footnote calls inside non-first repeated table headers or footers are now suppressed.
  • "table-layout: fixed" is no longer allowed for tables with a width of "max-content".
  • Table captions are now recognized as captions even if there are no rows, cells or row groups.
  • The PDFreactor Web Service now provides more information on missing files from configuration parameters. (#8218)

New in PDFreactor 11.0.1.12819 (Jan 27, 2021)

  • Fixed an issue in the license check mechanism.

New in PDFreactor 10.1.10722.15 (May 29, 2020)

  • The bug fixes include:
  • The CSS property "overflow-wrap" no longer erroneously affects words that are not at the beginning of their respective line in certain cases. (#8067)
  • Being fragmented, e.g. over multiple pages, no longer causes the content of single line flex containers to be ordered incorrectly in rare cases. (#8057)

New in PDFreactor 10.1.10722.14 (Apr 29, 2020)

  • The "break" property values "left", "right", "recto" and "verso" are now correctly prioritized over "page" and "always". (#8030)
  • When the property "-ro-image-resampling" is applied to background images the used resolution is now determined correctly. (#8025)

New in PDFreactor 10.1.10722.13 (Mar 10, 2020)

  • The bug fixes include:
  • The JavaScript methods document.getElementsByClassName() and ro.layout.getBoxDescriptions() no longer cause exceptions in specific cases.

New in PDFreactor 10.1.10722.12 (Feb 27, 2020)

  • PDFreactor Web Service no longer fails to start when temporary document storage is disabled. (#7975)

New in PDFreactor 10.1.10722.11 (Feb 12, 2020)

  • The bug fixes include:
  • QR-codes can now contain non-ASCII characters. (#7966)
  • The "transform" CSS property can now also be applied to flex items and pages. (#7967)
  • URLs containing non-ASCII characters are now correctly escaped in all cases, including Punycode escaping for hostnames. (#7962)
  • Improved handling of cyclic CSS custom properties. (#7964)
  • HTML description lists split over page breaks are now handled correctly when converted to tagged PDF.

New in PDFreactor 10.1.10722.10 (Jan 21, 2020)

  • The bug fixes include:
  • Web fonts in low memory environments no longer cause exceptions. (#7940)
  • Synthetic bold is no longer applied to fonts that are bold according to their PANOSE weight. (#7930)
  • Palette-based PNG images can now be converted to CMYK. (#7933)
  • Flex items are no longer aligned incorrectly in certain nested layouts. (#7672, #7931)
  • Event propagation now also includes "window" on capture and bubble as well as the actual event target on capture. (#7879)
  • Arrays from "Promise" methods now have all array methods.

New in PDFreactor 10.1.10722.9 (Dec 16, 2019)

  • PDFs used as repeated background images no longer overflow their elements. (#7926)
  • The contents of PDFs used as images are no longer erroneously offset when their media box is not placed at the point of origin. (#7919)
  • The PDFreactor OSGi bundle now supports all classes that are part of the public API. (#7925)

New in PDFreactor 10.1.10722.8 (Dec 9, 2019)

  • Security fixes for SVG parsing. (#7915, #7914)
  • Complex flex layouts no longer cause conversions to terminate with exceptions in some cases. (#7894)
  • Converting multiple asset packages in parallel no longer causes exceptions in rare cases. (#7918)
  • Performance fixes for Leaflet, Plotly.js and other JavaScript libraries creating complex SVGs. (#7908)
  • Collapsed through elements no longer erroneously affect page breaks in certain cases. (#7898)
  • PDFs embedded into other PDFs, e.g. via "img" elements or CSS backgrounds, now have their fill color reset to black, avoiding missing graphical objects in rare cases. (#7906)

New in PDFreactor 10.1.10722.7 (Nov 13, 2019)

  • The bug fixes include:
  • Due to the following JavaScript improvements, plotly.js is now supported when applying this user-script: (#6115)
  • Function Blob() { }; window.URL = { createObjectURL: function() { return ''; } };
  • Nodes of documents from "XMLHttpRequest" or "DOMParser" can now be inserted into the main document.
  • Calling "toString()" with "null" as the "this" object now produces the correct string.
  • Improved JavaScript access to SVG DOM, including node properties and rectangles.
  • Added the "assign()" function to the "Object" JavaScript top-level object.
  • Improved support for React, via the following JavaScript improvements:
  • "DOMContentLoaded" event now bubbles to "window".
  • XML in JavaScript content no longer causes exceptions.
  • "insert()" and "delete()" on CSS rule lists now throw the correct JavaScript exceptions when the index is out of bounds.
  • The proprietary line descriptions are now also available for inline-block elements directly containing text content.
  • "max-width" of images in flex contexts is now applied correctly.
  • Corrected certain cases affecting percentage-based dimensions of nested flex items.
  • Running elements no longer influence the previous page in rare cases.
  • Specific complex layouts no longer cause unexpected page breaks.
  • Forced break styles on table headers or footers no longer cause exceptions.
  • The URLs of PDF documents to be merged can now be relative, also allowing the PDFs to be part of asset packages.
  • The configuration property "customDocumentProperties" now works as intended.

New in PDFreactor 10.1.10722.6 (Oct 1, 2019)

  • Color space conversion no longer fails for certain PNG images. (#7819)
  • Image recompression and resampling no longer fail for images with large dimensions. (#7817)
  • Elements with non-visible overflow and auto height no longer prevent their content from creating named pages. (#7646, #7694)
  • The API property "JavaScriptSettings.maxTasksWithoutDomChange" is applied correctly again. (#7841)
  • Resources from file URLs containing fragments no longer cause exceptions. (#7812)
  • Data URIs containing consecutive white-spaces are processed correctly again. (#7800)
  • Footnotes created by the content of flex items are now displayed correctly. (#7840)

New in PDFreactor 10.1.10722.5 (Aug 7, 2019)

  • The new features and improvements include:
  • SVG elements with the same color for stroke and fill are now optimized to avoid visual issues in PDF viewers. Most noticeably MathJax equations no longer look too bold in PDFs, especially when zoomed out. (#7740)
  • The bug fixes include:
  • Some combinations of "cHRM" and "gAMA" headers in PNG images embedded into PDFs no longer cause incorrect visual results. (#7796)
  • Certain cases of complex tables no longer cause exceptions. (#7786)

New in PDFreactor 10.1.10722.4 (Jul 22, 2019)

  • The new features and improvements include:
  • The CSS properties "overflow-wrap" and "word-wrap" now support the value "anywhere" which has the same effect as "break-word" but also influences layouts that depend on the minimum sizes of elements. (#7620)
  • The bug fixes include:
  • Solved various "MathJax" related issues, by correcting the insertion of block elements into inline parents. (#7541, #7739, #7749, #7750, #7751)
  • Solved JavaScript SyntaxErrors when using "Vue.js", by no longer passing 'strict' mode into "new Function()" executions. (#6559)
  • Added support for "Chart.js" 2.0, by correcting "toString" edge cases. (#5969)
  • Using "MathJax" in certain complex layouts no longer causes non-terminating exceptions. (#7770)
  • Corrected certain edge cases when references to JavaScript functions are called. (#7767)
  • Color space conversion to CMYK now works correctly for all image types. (#7745)
  • Certain complex layouts no longer cause exceptions. (#7752, #7763, #7771, #7772)
  • PDFreactor Web Service server parameters can now properly be set as environment variables. (#7778)

New in PDFreactor 10.1.10722.3 (Jul 5, 2019)

  • The new features and improvements include:
  • Introduced the proprietary CSS property '-ro-source-area' which specifies the PDF page box used when embedding PDF documents as images. (#7713)
  • The bug fixes include:
  • When using PDF documents as images some edge cases no longer cause incorrect results. (#7705)
  • The 'location' object in JavaScript is now correctly converted to string, solving a MathJax issue. (#7730)
  • MathJax as well as some complex SVGs no longer fail in some cases when the base URL differs from the document URL or when there is neither a base URL nor a document URL. (#7744)
  • User style sheets with BOMs are now processed correctly in all cases. (#7076)
  • Certain complex flex layouts no longer cause exceptions. (#7652)
  • Block images with generated '::before' content no longer break conversions. (#7738)
  • Named pages are now processed correctly when there are positioned elements at the beginning. (#7724)
  • The property '-ro-pdf-attachment-url' now works correctly, for both string and URL values, when CSS validation is enabled. (#7597)

New in PDFreactor 10.1.10722.2 (Jun 12, 2019)

  • The bug fixes include:
  • PDF tagging no longer causes exceptions. (#7604)
  • Tables with combinations of empty or missing "col" and "tbody" elements, tables in certain combinations with flex containers and other constructs no longer break conversions. (#7581, #7645, #7680)
  • "inline-block", "inline-table" and "inline-flex" elements no longer overflow lines unnecessarily and no longer erroneously interact with BiDi. (#7565, #7630)
  • The dimensions of "inline-block" elements with "min-width" or "min-height" are now determined correctly. (#7632)
  • Percentage widths inside cells of auto layout tables are now resolved correctly. (#7719)
  • Width of flex containers is no longer incorrect in certain complex scenarios. (#7653)
  • Named pages in certain documents no longer cause incorrect page breaks. (#7606)
  • The selector specificity of "-ro-nth" in combination with a page group is now higher than that of just a page group. (#7640)
  • The "extensible" JavaScript property no longer erroneously disallows the modification of existing properties in strict mode. This issue broke support for the library "React". (#7636)
  • Low level style sheet manipulation from JavaScript now works correctly for more edge cases. (#7629)
  • Improved exception handling during JavaScript debugging.
  • The dimensions for "-ro-link-area: block" and similar styles as well as "offsetWidth" and similar element properties are now correctly determined in all situations. (#7664, #7681)
  • Large data URIs in "src" attributes are no longer erroneously blocked. (#7723)
  • The pages counter no longer has incorrect values in certain documents. (#7603, #7722)
  • Corrected footnote positioning in documents using "-ro-scale-content". (#7591)
  • Footnote markers inside the text of multi-column content no longer disappear in some cases. (#7575)

New in PDFreactor 10.1.10722.1 (Jun 4, 2019)

  • The bug fixes include:
  • URLs with custom protocols no longer cause exceptions when using a matching CustomUrlStreamHandler. (#7712)
  • Fixed 'defineProperty' related issue that broke jQuery setting listeners on 'window'. (#7711)
  • XMLHttpRequest now properly handles encodings, incl. byte order marks (BOM), and document types. (#7718)
  • Converting Asset Packages no longer returns an error. (#7721)

New in PDFreactor 10.0.10722.3 (Mar 28, 2019)

  • The bug fixes include:
  • Page breaks no longer happen between positioned first child elements and their next normal flow sibling. (#7611)
  • Inline-block elements with a specified width no longer cause incorrect widths for surrounding tables. (#7614)
  • Percentage values as parameters of "rgb" functions in SVG are handled correctly again. (#7626)
  • Certain combinations of target counters and targets no longer cause missing values when segmentation is enabled. (#7602)
  • Adding multi-column structures via JavaScript no longer causes exceptions. (#7569)
  • The JavaScript functions "prompt", "confirm" and "alert" no longer cause exceptions. (#7576)
  • Using asset packages in evaluation mode no longer breaks conversions. (#7583)
  • Logs appended to output PDFs again have correct timestamps. (#7592)

New in PDFreactor 10.0.10722.2 (Mar 28, 2019)

  • The bug fixes include:
  • Target-counter and target-text functionality now works correctly when segmentation is enabled. (#7552)
  • Complex collapsed tables no longer cause exceptions in rare cases. (#7554)
  • Dithering translucency for PDF/A-1 conformance now works independent of image type. (#7551)
  • Specific combinations of tables and overflow styles no longer cause exceptions when PDF tagging is enabled. (#7561)
  • Headings spanning multiple pages no longer cause exceptions when PDF tagging is enabled. (#7556)
  • JavaScript modifications of documents with counters in the contents of "XHTML" CSS functions no longer cause exceptions. (#7540)
  • "Save Memory" mode now works correctly for all supported image formats. (#7560)
  • "BoxDescription.columnIndex" is now computed correctly in all cases. (#7542)
  • Python and CLI Wrappers are now compatible with Python 3. (#7559)

New in PDFreactor 10.0.10722.1 (Dec 19, 2018)

  • The bug fixes include:
  • Synthetic italic is applied again. (#7532)
  • Empty inline elements no longer prevent their parents from collapsing through. (#7531)
  • The dimensions of multi-page collapsed tables with varying border widths are now determined correctly. (#7110)

New in PDFreactor 10.0.10722 (Dec 13, 2018)

  • The bug fixes include:
  • Hyphenation no longer causes erroneous text sizes when using Java 11. (#7526)
  • Corrected static position of certain absolutely positioned elements. (#7511)
  • Fixed a rare exception what could lead to seemingly non-terminating conversions. (#7521)

New in PDFreactor 10.0.10702 (Dec 4, 2018)

  • The new features and improvements include:
  • Implemented segmentation functionality to significantly reduce the memory consumption of conversions of large documents. (#7082)
  • Added alternative table implementation that drastically reduces the amount of time and memory required to convert large uniform tables. (#7234)
  • Significantly reduced impact on performance of large style sheets. (#7224, #7453)
  • Added optional color space conversion for CSS colors and images via the API setting "ColorSpaceSettings". (#6327, #6868)
  • Image embedding and decoding can now handle more subformats and special cases. (#7001, #7007, #7085, #7093, #7134)
  • Image recompression can now output JPEG without eliminating transparency. (#5997, #7180)
  • Added support for typographic font families, including the CSS property "font-stretch" and numerical "font-weight" values. (#6086, #6090, #7078)
  • JavaScript now has optional settings that log different amounts of debug information.
  • JavaScript now supports "Intl.NumberFormat" and "Intl.DateTimeFormat" objects as well as "toLocaleString()" functions. (#7071)
  • Added support for CSS page groups, incl. the ability to e.g. select the first pages of chapters. (#7124, #7125)
  • Added support for the "clip" value of the "overflow" property, which hides the overflow, but allows "baseline" alignment, e.g. for inline-block boxes.
  • Implemented the CSS property "text-align-all" and adjusted "text-align" and "text-align-last" accordingly, making "text-align" a shorthand. (#7228)
  • Added support for optional validation of created PDF/A documents. (#6911)
  • Added support for JavaScript DOM property "innerText" and methods "before", "after", "replaceWith", "prepend", "append" and "remove". (#7147, #7411, #7416)
  • The proprietary JavaScript BoxDescription objects now contain information about in which column or region, if any, a box is laid out. (#7341)
  • "-ro-object-slice" now has a new value "avoid" which causes only images to be sliced that do not fit on the next page. In addition sliced images now respect "widows" and "orphans" to define areas at their start and end in which not to slice. (#7270)
  • Added support for new (prefixed) relative length units:
  • "-ro-lh": line height, similar to "em".
  • "-ro-rlh": root line height, similar to "rem".
  • "-ro-cap": capital letter height, similar to "ex".
  • "-ro-ic": width of U+6C34, similar to "ch".
  • Logical CSS properties and values are now available without prefix. (#7403)
  • Added support for advanced box alignment via the properties "align-self", "align-items", "align-content", "justify-self" and "justify-items" as well as the shorthands "place-self", "place-items" and"place-content". (#6409)
  • Completely revised flex-box layout, resulting in significantly improved standard compliance and browser-like behavior as well as better handling of many edge-cases and pagination. (#6853, #6854, #6940, #6975, #6976, #6983, #6984, #7166, #7272, #7350, #7520)
  • Significantly improved behavior in various edge cases based on official tests, including "Acid2" which PDFreactor now passes at default settings. (#7242)
  • Conversions can now be terminated from within JavaScript, including user scripts. (#7121)
  • JavaScript wrapper now includes methods that return the document as a Blob. (#7238)
  • Various improvements to logging. (#7249, #7410)
  • CSS filter functions now support various numbers of parameters, e.g. "blur" with two parameters or "grayscale" with none. (#7187)
  • It is now possible to set and retrieve sticky cookies for conversions using the PDFreactor Web Service via the wrapper APIs. (#7036)
  • Improved configuration options for PDFreactor Docker containers. (#7136)
  • PDFreactor can now dump the input document and all resources to a specified directory in case of an exception. (#7162)
  • PDFreactor Web Service logs now contain the date. (#7179)
  • CSS errors and JavaScript output are now logged into separate CSS and JavaScript logs, respectively. They are accessible in the "log" property of the "Result" and "Progress" objects.
  • It is now possible to specify a separate connect and read timeout for resource requests during the conversion via the configuration properties "resourceConnectTimeout" and "resourceReadTimeout", respectively. (#7357)
  • Debug mode behavior is now configurable so that certain features can be enabled or disabled for particular use cases.
  • Improved error messages when using the PDFreactor Web Service client wrapper API methods "getStatus" and "getVersion". (#7374)
  • The included Jetty has been updated to version 9.4.8.v20171121. (#7175)
  • The PDFreactor Java wrapper now supports compact1 profile (or higher) VMs. (#7083)
  • The Corporate Invoice sample now uses AngularJS and "NumberFormat". (#7084)
  • Updated i18n support to Unicode 11
  • Improved documentation. (#7073, #7164, #7494)
  • The changes include:
  • Please also see the migration guide.
  • Removed support for Java 6 and added support for Java 11. The supported Java versions of the PDFreactor library are now 7, 8 and 11. (#7054)
  • PDFreactor now uses float precision internally, improving layout precision and in many cases enhancing space efficiency. (#7095)
  • CSS value validation is now enabled by default, resulting in standard compliant and browser like handling of illegal values. (#5977, #6541)
  • The JavaScript modes have been replaced by a singular new mode with some settings and compatibility with various JavaScript libraries has improved. (#7158)
  • MathML support has been removed from core functionality in favor of the JavaScript library "MathJax", which provides significantly better looking results and is actively maintained (SVG output only, see the manual for an easy to use user script). (#5939, #6102, #6131)
  • Image transparency is no longer removed entirely for conformances that forbid it, but replaced by a dithered approximation. (#7309)
  • Changed the way non-interactive form fields are created, and updated their default styles, providing a smoother and more consistent integration with the rest of the document. It also solves issues that certain styles did not affect form elements. (#6952, #7200)
  • The following functionalities are now doctype dependent, unless overridden in the API:
  • Paragraph line-height being used as minimum line-height for all its lines. (#7242)
  • CSS class selectors being handled case-sensitively. (#7456)
  • Named-string CSS syntax and behavior have been updated. (#7349)
  • New default fonts have been added for the generic font families "cursive" and "fantasy". The generic font family "system-ui" is now supported as a fixed mapping to "sans-serif". (#7409)
  • Common font directories are now also searched in Linux environments, unless the use of system fonts is disabled. (#7371)
  • The installer will no longer overwrite the Log On name of the Windows service. It will, however, set the recovery options to 'restart the service'. (#7375)
  • Rectangles returned by proprietary "BoxDescription" JavaScript objects now always contain float values. (#7342)
  • (non-web service) Java API methods no longer throw exceptions of type IOException, SAXException, TransformerException. These are instead available as cause of a PDFreactorException.
  • JavaScript wrapper API methods now return Promises instead of using callback parameters.
  • Some classes and properties of the Java and .NET wrappers were changed. Please refer to the migration guide for more information.
  • The PDFreactor configuration property "enableDebugMode" is deprecated in favor of "debugSettings" of type "DebugSettings".
  • Improved logging when using the "signPDF" configuration option. Exceptions that occur during signing now cause the conversion to be aborted. (#7063)
  • Removed verbose CSS error messages from the main log. They are still available in the new CSS log.
  • The bug fixes include:
  • Rasterized content, e.g. shadows and filters, is now CMYK, if that is the target color space, so it no longer breaks CMYK PDF/A documents. (#7294, #7490)
  • Space freed by the application of "box-decoration-break: slice" is now consistently taken into account for layout. (#7005, #7104, #7455)
  • Superfluous line-breaks no longer occur in special cases. (#7452, #7496)
  • Alignment of table cell content is now correct in special cases. (#7149, #7365)
  • Table structures are now properly corrected in more special cases. (#7420, #7024)
  • The behavior of floats in various special cases has been improved significantly. (#6922, #7414, #7471, #7480, #7485)
  • Multi-column layout now properly handles complexly nested content with large values for margin-bottom. (#7479)
  • Footnote calls are now properly disabled when their content is set to 'none' or to an empty string. (#6910)
  • JavaScript DOM manipulation no longer breaks named strings. (#7467)
  • Images with a max-width (and no specified width) are now laid out correctly inside inline-blocks. (#7444)
  • Absolute positioning no longer ignores padding of containing block. (#7483)
  • "navigator.userAgent" and "navigator.appVersion" are now more browser like. (#7429)
  • Various JavaScript DOM methods are now more robust against bad parameters. (#7417)
  • CSS "calc" functions can now be nested. (#7449)
  • Eliminated SVG specific limitations, enabling spot colors and CSS variables. (#7042, #7112)
  • The "uri" property of user style sheets and user scripts is no longer ignored if they also have "content" set. (#7462)
  • Automatic redirects now also work if the location is relative. (#7461)
  • White spaces in the "data" attribute of "object" elements no longer cause the resource to not be loaded. (#7418)
  • Setting or getting the "innerHTML" or "outerHTML" DOM properties via JavaScript now properly handles HTML and XML specific behavior. (#7060, #7190)
  • The layout is no longer incorrect for specific constructs. (#7323, #7329, #7363)
  • Interactive form fields and full compression are no longer unnecessarily forbidden in all conformance modes. (#7330, #7333)
  • Some specific documents no longer cause exceptions or break the resulting PDF documents. (#6139, #7334, #7335, #7337, #7351)
  • Improved error handling when using the "convertAsBinary" API method. (#7336)
  • CSS validation no longer removes some of the valid values of the "columns" property. (#7339)
  • SVG "use" elements can now address nested "svg" elements. (#7352)
  • XMLHttpRequests using POST or PUT now work correctly when the "connections" content observer is enabled, including debug mode. (#7358)
  • All wrappers can now handle trailing slashes in web service URLs. (#7364)
  • The progress of web service conversions can now be retrieved consistently. (#7372)
  • Synthetic bold functionality no longer needlessly affects fonts with inconsistent metadata. (#7321)
  • SVG background images are no longer scaled or positioned incorrectly in rare cases. (#7245)
  • "-ro-scale-content" no longer affects named strings in rare cases. (#7183)
  • Specific cases no longer cause exceptions. (#7196, #7248, #7282, #7230)
  • Complex named page cases no longer break layouts or cause exceptions. (#6993, #7152, #7237, #7322)
  • Page break avoiding styles now properly affect tables and table rows. (#6537, #7269)
  • Page break behavior is now more consistent in special cases. (#7355, #7455, #7498)
  • Tables and flex containers no longer cause unexpected page break behaviors. (#5800, #6740, #7188, #7283)
  • Specific scenarios no longer cause incorrect width computation and subsequent issues. (#6797, #6981, #7150, #7231)
  • Complex scenarios no longer cause incorrect positioning of absolute positioned elements. (#7201)
  • Line break behavior now properly interacts with inline-blocks. (#7261, #7318)
  • CSS parser and validation now properly reject semicolons between rules and non-zero numbers as lengths, respectively.
  • Improved syntactical robustness of the CSS "calc" function. This includes support for CSS variables. (#7081, #7140, #7143)
  • Fixed layout relevant effects of the CSS property "overflow", including support for "overflow-x" and "overflow-y". (#7194)
  • "vertical-align: baseline" for inline blocks with "non-visible" overflow now aligns properly. (#7155)
  • The content of inline elements (e.g. inline-block) is no longer erroneously affected by margin truncation at page breaks. (#7156)
  • The DOM functions "insertCell" and "insertRow" available in JavaScript now behave correctly with no parameter. (#7122)
  • ExceedingContents content observer now functions correctly with debug mode enabled. (#7130)
  • ExceedingContents analyze option "CONTENT_AND_STATIC_BOXES" now works as intended. (#7132)
  • Resource URLs that contain illegal characters no longer cause invalid debug data. (#7198)
  • Fixed exceptions when regions cause a page break. (#6488)
  • Absolutely positioned page margin boxes are no longer erroneously affected by bleed or media sizes. (#7202)
  • Tables affected by floats are now sized and positioned correctly. (#7169)
  • Fixed non-terminating JavaScript in a specific "iframe". (#7170)
  • Box shadow now works for inline elements spanning multiple lines. (#7061)
  • Content following a CSS leader was placed slightly too far to the left. (#7111)
  • Fixed font fallback issue causing missing non-breaking hyphens in rare cases. (#6989)
  • The effect of "break-after: avoid" and "break-before: avoid" now extends past neighboring elements that are "collapsed through". (#7115)

New in PDFreactor 9.1.9797.9 (Aug 14, 2018)

  • The bug fixes include:
  • The SVG attributes "dx" and "dy" now work properly on text elements. (#7319)
  • Repeated images in tables spanning over several pages are no longer missing under rare circumstances. (#7244)

New in PDFreactor 9.1.9797.8 (Jun 13, 2018)

  • The bug fixes include:
  • The width of deeply nested floats is now determined correctly. (#7307)
  • Setting "max-height" on images inside floats no longer causes incorrect sizes or positions. (#6797, #7315)
  • Complex nested inline elements no longer cause superfluous line breaks. (#7303)
  • HTML "class" attributes are now processed correctly when containing line breaks in the HTML source. (#7312)
  • Optional XSLT processors, e.g. Saxon, no longer cause exceptions when the document contains no XSLT processing instruction. (#7313)
  • JavaScript wrapper now supports service URLs with trailing slash. (#7263)

New in PDFreactor 9.1.9797.7 (May 3, 2018)

  • The bug fixes include:
  • Specific complex float layouts no longer break conversions. (#7248)
  • Base64 encoded Data-URIs containing SVGs now work properly in "img" elements. (#7250)
  • Accessing iFrames from JavaScript now works correctly and without slowing down conversions. (#7262)
  • The "Result" object in Java and .NET wrappers is no longer missing several properties. (#7257)
  • Java and .NET wrappers no longer throw exceptions when the "getStatus" or "deleteDocument" API methods are called successfully. (#7255)
  • Java wrapper now correctly retrieves the PDFreactor Web Service version. (#7256)
  • PDFreactor Web Service is now properly installed and started as a system service on macOS and Linux. (#7258)
  • Connecting to the PDFreactor Web Service via "localhost" is no longer unusually slow under Windows. (#7233)

New in PDFreactor 9.1.9797.6 (Apr 10, 2018)

  • The bug fixes include:
  • Embedded SVGs containing large amounts of sibling elements no longer impact conversion performance. (#7241)
  • Tables with "width" set to "auto" no longer contain unexpected line breaks when the table fits into its container. (#7227)
  • Modifications of complex multi-page tables no longer cause errors. (#7222)
  • Multi-columns containing complex float constructs are now laid out correctly. (#7221)
  • Break styles on nested block elements are now applied correctly. (#7208)
  • Connecting to Jetty via localhost under Windows is no longer unusually slow. (#7233)

New in PDFreactor 9.1.9797.5 (Feb 2, 2018)

  • Fixed exceptions when iframe cannot load its document and added support for "about:blank" as iframe source. (#7168)
  • Fixed exceptions in some baseline-aligned flex-box layouts. (#7079)
  • Fixed exceptions in debug mode when connections are logged and attached. (#7153)
  • Corrected exception type and message in .NET wrapper when using an incorrect service URL. (#7171)
  • Backslashes in results of "attr" CSS functions are no longer erroneously treated as beginnings of CSS character escape sequences. (#7185)
  • Added additional meta data to tagged PDFs to eliminate negative results specific to certain PDF/A and PDF/UA validators. (#7181)

New in PDFreactor 9.1.9797.4 (Dec 13, 2017)

  • The bug fixes include:
  • Fixed a rare exception when JavaScript was used to add columns to tables with collapsed borders. (#7106)
  • Using the merge mode "overlay" in combination with the preferences style "initial-zoom: fit-page" no longer causes exceptions. (#7109)
  • Generic font families, like "serif", are mapped correctly again. (#7114)
  • Size and position of elements inside table cells created by fixup are now determined correctly. (#7089)
  • Box shadow is now applied to inline elements. (#7061)

New in PDFreactor 9.1.9797.3 (Dec 7, 2017)

  • The bug fixes include:
  • Added support for OpenType fonts that have the "USE_TYPO_METRICS" flag ("fsSelection" bit 7) set. (#7088)
  • Fixed exceptions in complex layouts. (#6925, #7068, #7075, #7080, #7100, #7099, #7102)
  • Line breaks are now properly avoided around CSS leaders. (#7098)
  • Added proper JavaScript prototypes for "CanvasGradient" and "CanvasPattern". (#7070)
  • Query strings no longer break file URLs. (#6817)
  • HTML <base> element can now handle relative URLs when there is an absolute document URL or other base URL. (#7086)
  • The "window.location" JavaScript object now correctly points to the resolved document URL. (#7105)
  • The "BookletMode" API property is applied again. (#7090)
  • The .NET wrapper now handles trailing slashes in web service URLs. (#7096)

New in PDFreactor 9.1.9797.2 (Oct 22, 2017)

  • The bug fixes include:
  • Broken system fonts are now handled properly. (#6979)
  • System fonts are now only read when necessary. (#7051)
  • Complex float layouts no longer cause floats to be positioned incorrectly. (#7012, #6961)
  • Fixed bidi layout in page margin boxes and in conjunction with leaders. (#7044)
  • Tables no longer miss content in complex layouts, incl. pages-spanning multi-column elements. (#7050)
  • Fixed OSGi regression from PDFreactor 9.1. (#7064)
  • The web service configuration is now loaded when placed in the same directory as the web service JAR. (#7047)
  • PDF structure no longer contains superfluous non-standard element. (#7049)
  • Fonts containing more than 55000 glyphs are now handled properly, so NotoCJK can now be used for PDF text. (#6748)
  • The "-ro-image-resampling" property now properly scales background images. (#7041)

New in PDFreactor 9.1.9797.1 (Sep 29, 2017)

  • The bug fixes include:
  • Table cells spanning several columns of a table in right-to-left direction were positioned incorrectly. (#7019)
  • The style "position: absolute" in a right-to-left context could result in incorrect vertical positioning. (#7009)
  • Fixed an exception that could occur when tables with collapsed borders contained rows without cells. (#6987)
  • JavaScript processing in "real-time" mode within iframe elements did not work correctly. (#7029)
  • TIFF images with certain clipping paths could not be displayed. (#7016)
  • Fixed an exception that occurred when the document contained a completely empty page while ShrinkToFit was enabled. (#7025)
  • Asynchronous conversions now work as expected in Java wrapper. (#7028)
  • JavaScript exports now properly return a JSON string when an object or array is exported. (#7030)
  • Fixed an exception that occurred when applying CSS filters to text containing certain characters in certain fonts. (#7034)

New in PDFreactor 9.1.9797 (Sep 22, 2017)

  • The new features and improvements include:
  • Added option for the ZUGFeRD data format for electronic invoices, via a JavaScript API. This is an add-on that needs to be licensed separately. (#6294)
  • It is now possible to change the resolution and compression of images embedded into PDFs using proprietary CSS properties. (#4344, #6252)
  • Significantly improved performance for conversions of large documents with simple structures.
  • Added additional fallback font for Korean characters. (#6861)
  • Improved error handling and logging. (#5452)
  • Now avoiding anti-aliasing artifacts at border and background edges in more cases. (#6965)
  • Improved PDF shape creation code and added proprietary CSS property "pdf-shape-optimization" for further configuration to avoid rare side effects when post-processing created PDFs. (#6875, #6893)
  • There is a new REST URI to retrieve the meta data of converted documents: /rest/document/metadata/{id}. This is useful when the meta data is required but the document itself should be streamed. In the wrappers, this functionality is implemented via "getDocumentMetadata(id)" method.
  • The server now logs time zone information on startup and for conversions.
  • CSS:
  • Implemented "CSS Custom Properties for Cascading Variables". (#6706)
  • Implemented "@supports" rules as well as the "CSS.supports" JavaScript functions.
  • Added support for the CSS-wide keywords "inherit", "initial" and "unset" as well as for "currentColor".
  • Added support for validation of property values at parse time, properly ignoring invalid values. This functionality is disabled by default until the next major version, but can be enabled via the "CssSettings" API object.
  • Improved processing of "attr" and "-ro-attr" functions, which enables them to be used for any property. (#6978)
  • Added support for the "unicode-bidi" values "isolate", "isolate-override" and "plaintext".
  • Added support for the property "object-position".
  • It is now possible to apply an offset to the "pages" counter value via the "@-ro-preferences" property "pages-counter-offset". (#6469)
  • JavaScript:
  • Added support for Maps, Sets, WeakMaps and WeakSets. (#6897)
  • Improved "getComputedStyle" method to return lengths in "px" and use layout data where appropriate. This enables support for the jQuery method "outerHeight(true)". (#5622, #5620)
  • Various improvements for more browser-like behavior and better compatibility with libraries, incl. support for "Promise" and significantly improved "prototype" functionality. (#5664, #5712, #6896, #6912, #6923)
  • The "ro.exports" object is now also supported when using raster image output. (#6856)
  • Command Line Wrapper:
  • Added convenience argument -c/--css for adding one or more style sheets. The value can be CSS content, a URL or a file path.
  • Added convenience argument -j/--javaScript for adding one or more scripts. The value can be JavaScript content, a URL or a file path.
  • Command line now supports multi-image conversions. (#6928)
  • Debug mode:
  • Improved performance and format of attachments. (#6960)
  • The "Connections" and "MissingResources" ContentObservers will be enabled and a conversion log, a log of missing resources as well as a log of all connection attempts will be attached as text files to the generated PDF.
  • Server side logging of the PDFreactor Web Service will be enabled at the highest log level.
  • The changes include:
  • Relative URLs in page margin boxes are now resolved against the URL of the style sheet instead of the URL of the document. (#6833)
  • CSS system colors have been changed to a fixed, minimalist color scheme. (#6974)
  • Some proprietary CSS properties had their values definition and initial value tweaked, deprecating some value types.
  • PDFreactor no longer automatically registers servlet listeners for cleanup when the modular JAR is used, but provides facilities for automatic and manual cleanup on shutdown. (#6909)
  • Length values in the default HTML style sheet are no longer affected by "pixelsPerInch" and "pixelsPerInchShrinkToFit". (#6945)
  • The bug fixes include:
  • The "pageOrder" can now be applied in the .NET API. (#6934)
  • <br> elements no longer cause conformance exceptions in some cases when converting to PDF/A. (#6900)
  • Corrected table layouts when "vertical-align: baseline" is set in complex cases. (#6955)
  • Eliminated special cases that caused running elements to not be laid out properly. (#6527, #6995)
  • Complex JavaScript in combination with tagged PDF output no longer causes exceptions. (#6986)
  • The width of table captions now correctly matches the captioned table in all cases. (#6951)
  • "inline-block", "inline-table" and similar elements are no longer fragmented, as required by the specification. (#6948)
  • "-ro-object-slice" is now properly ignored for non-block images. (#6947, #6990)
  • Now avoiding an issue in certain versions of Java that could break the results of SVG "mask" elements. (#6918)
  • User style sheets added as URLs are now parsed with encoding detection and BOM handling, like other linked style sheets. (#6944)
  • Calling "ownerSVGElement" from JavaScript caused superfluous warning messages. (#6991)
  • Added some missing pieces of web service documentation. (#6916, #6917)
  • Fixed exceptions in certain complex documents. (#7000)
  • Corrected reciprocal log output of "-ro-scale-content" percentage. (#7002)
  • Wrappers can now properly convert input documents from byte arrays (Java and .NET only) and base64-encoded input documents. (#7008)

New in PDFreactor 9.0.9411.8 (Aug 25, 2017)

  • The bug fixes include:
  • Fixed encoding issue in Java wrapper (#6969)
  • Fixed rare exception in certain complex layout cases (#6971)

New in PDFreactor 9.0.9411.7 (Aug 7, 2017)

  • The bug fixes include:
  • Inline block elements can no longer be split across pages. (#6947, #6948)

New in PDFreactor 9.0.9411.6 (Jul 7, 2017)

  • The bug fixes include:
  • Elements with CSS opacity or shadows are now positioned correctly when non-default pixels-per-inch values are set. (#6939)
  • JavaScript processing in "ENABLED_REAL_TIME" mode no longer impedes parallel conversions and now properly terminates conversions on certain errors. (#6941)
  • Fixed exceptions and incomplete layouts in certain complex documents. (#6942)

New in PDFreactor 9.0.9411.5 (Jul 3, 2017)

  • The bug fixes include:
  • Fixed an issue where the API configuration property "pixelsPerInchShrinkToFit" was not applied correctly. (#6938)
  • Fixed exceptions and incomplete layouts in certain complex documents. (#6924, #6927, #6935, #6936, #6937)

New in PDFreactor 9.0.9411.4 (Jun 10, 2017)

  • The bug fixes include:
  • Fixed conformance exceptions due to non-embedded fonts when converting documents containing <br> elements to PDF/A or PDF/X. (#6900)
  • Fixed possible exceptions, slow conversions and layouts not using the entire available space on pages for documents containing a large amount of footnotes. (#6903)

New in PDFreactor 9.0.9411.3 (May 19, 2017)

  • The bug fixes include:
  • Fixed memory leak when raster images inside SVGs could not be loaded. (#6892)
  • Fixed opacity in certain SVG structures. (#6721)

New in PDFreactor 9.0.9411.2 (May 15, 2017)

  • The bug fixes include:
  • Fixed exceptions when cleared boxes immediately followed floated boxes split across pages. (#6855)
  • Fixed exceptions due to misparented table captions. (#6874, #6877)
  • Forced page breaks now have priority over avoided ones, which is in line with the specification and avoids rare incomplete layouts. (#6886)
  • Server parameters consisting of Windows paths containing spaces are processed correctly. (#6885)
  • The Web Service now recognizes a license key placed in the "jetty/lib/ext" folder correctly. (#6887)

New in PDFreactor 9.0.9411.1 (May 4, 2017)

  • The bug fixes include:
  • Fixed issues when using Highcharts 5.0.10 by adding support for "ownerSVGElement" in JavaScript. (#6838)
  • Fixed possible exceptions for tables with no cells or with certain page breaks. (#6837, #6845)
  • Accessing server information via the PDFreactor Web Service monitoring API no longer causes errors. (#6846)
  • The JavaScript method getBoxDescriptions() returned an empty list for images, inline-block elements and single line spans. (#6847, #6869)
  • Resolved an issue where user style sheets from URL could not be added when using the PDFreactor command line wrapper. (#6852)
  • Specifying "element" CSS functions in "@page" rules no longer causes NPEs. (#6851)
  • Media PDF page boxes not larger than the trim boxes no longer cause NPEs. (#6848)
  • IFrames that cannot be loaded no longer draw placeholders. (#6850)

New in PDFreactor 9.0.9411 (May 4, 2017)

  • The new features and improvements include:
  • Support for "box-shadow", "text-shadow" and "filter". (#4901, #5882, #5983)
  • Support for "opacity", without rasterizing the affected content. (#5880)
  • Support for "word-spacing". (#6716)
  • Experimental support for Flexible Box Layout (flex-box). (#5654)
  • Introduced "-ro-object-slice" to allow page breaks inside images. (#6395)
  • Improved JavaScript ES6 support, including arrow function, for...of loops and forEach methods on node lists. (#6800)
  • Improved JavaScript DOM element functions, especially for table-related HTML elements. (#6801)
  • The layout text content (incl. generated content) of elements and page margin boxes can now be retrieved in JavaScript. (#6772)
  • The dimensions of text content of lines and boxes can now be retrieved in JavaScript, e.g. to find overflowing text. (#6786)
  • Added PDF bookmark styles "-ro-bookmark-label" and "-ro-bookmark-state", as well as "-ro-bookmark-level" which deprecates "-ro-pdf-bookmark-level". (#6802)
  • Margins, paddings, borders, positions and floats can now be set via logical properties that depend on the BiDi direction. (#6803)
  • Added support for "recto" and "verso" page pseudo classes and break values. (#6804)
  • The layout of page margin boxes has been adapted to the latest specifications. (#6623)
  • Support for fragment identifiers, e.g. "fonts/myfontcollection.ttc#1", in "font-face" "src" URLs to specify which font of a TCC to use. (#6676)
  • It is now possible to configure for each web font whether it should be embedded completely, not at all or as a subset, which is the default option. (#5955)
  • Support for the "blank" page pseudo class. (#6175)
  • Added the length units "-ro-pw", "-ro-ph", "-ro-bw" and "-ro-bh" that are relative to the margin and bleed size of the first page respectively, while "vw" and "vh" are relative to the page content size. (#6422)
  • Vertical percentage margins and paddings of page boxes are now resolved against the page height. (#6805)
  • Raster Image Output can now be configured to output grayscale images. (#6525)
  • JavaScript can now pass data into the result object of the API. (#6543)
  • Java API setters are now chainable. (#6799)
  • Support for "systemd" in Linux installer. (#6672)
  • The "result" object now optionally contains structured information about missing resources or the connections opened by the conversion. (#6714)
  • The web service now supports zipped asset packages containing an input document and its resources. (#6645)
  • The web service now supports callback URLs for events during asynchronous conversions. (#6582)
  • The web service now supports configurable API keys to authenticate clients. (#6703)
  • The web service clients can now stream large binary data to a given stream or handle, thus greatly reducing the memory requirements of the client side. (#6741)
  • The web Service now features a RESTful monitoring API. (#6581)
  • Reduced memory requirements for merging with large PDF documents. (#6806)
  • Further reduced PDF viewer dependent visual artifacts in borders. (#6821)
  • Increased precision of PDF page rectangles to sub-micrometer. (#6742)
  • The changes include:
  • Please see the migration guide for instructions on how to restore the previous behaviors.
  • Updated various HTML5 default styles. (#6807)
  • Updated various default values, including page margin, body margin and rounding-mode. (#6041)
  • The default value of the "box-decoration-break" property is now "slice". (#6808)
  • Truncation to 0 of margins at the start of pages and columns is no longer performed for first pages and columns or after forced breaks. This is in accordance to the specification and matches browser behavior, but can be configured via a proprietary property. (#6681)
  • By default the first page of a document is now "recto", i.e. "right" for left-to-right documents. (#6668)
  • Moved PDFreactor PHP API into its own namespace. (#6577)
  • The package for the "ExceedingContents" class was changed from "com.realobjects.pdfreactor.exceedingcontents" to "com.realobjects.pdfreactor.contentobserver". (#6815)
  • Constructors of inner "Configuration" classes (like "Resource") that take multiple arguments have been deprecated and will be removed in a future version, as their setters are now chainable. The single exception is the "KeyValuePair" class whose multi-argument constructor is not deprecated. (#6813)
  • The Configuration method "setDocument(Object)" has been deprecated in favor of typed "setDocument" methods. (#6809)
  • The "ScriptResource" class is now deprecated in favor of "Resource". (#6814)
  • The "Configuration properties "mergeByteArray", "mergeByteArrays", "mergeURL" and "mergeURLs" are now deprecated in favor of "mergeDocuments". (#6810)
  • Version checks are now performed between the web service and the clients to ensure compatibility. (#6811)
  • Now logging a warning when the license keys cannot be parsed. (#6812)
  • The bug fixes include:
  • Margin collapsing between the tops of ancestors now consistently adjusts the outmost box correctly. (#6796)
  • Layout of inline-blocks, complex positioned elements and anonymous tables is now significantly more standard compliant and browser like. (#6343, #6381, #6382, #6411, #6511, #6590, #6603, #6614)
  • "br" elements no longer cause "auto" widths based on text content (e.g. for table cells or floats) to be too wide, when they are direct child nodes of a block. (#6818)
  • Fonts from TTCs can now be used in "font-face" rules. (#6653)
  • Save memory mode no longer causes certain images to not be embedded. (#6389)
  • Images that cannot be loaded repeatedly in save memory mode are now logged consistently. (#6730)
  • Empty table rows in collapsed tables no longer cause exceptions. (#6608)
  • Multiple table headers of the same table are now repeated in the correct order. (#6825)
  • Merging PDF documents will no longer result in incorrect meta data. (#6508)
  • Percentage sizes for page margin boxes are now resolved according to the specification. (#6622)
  • SVGs with uncommon SVG "version" attribute values can now be parsed. (#6609)
  • SVG elements no longer ignore connection specific settings like cookies. (#6491)
  • Inline SVGs can now reference other inline SVGs in the same document. (#6607)
  • External resources loaded by SVGs are now cached more efficiently, notably reducing the amount of requests. (#6769)
  • "style" elements in external SVGs are now processed as CSS when no type is specified. (#6149, #6156, #6442)
  • Inline styles modified via JavaScript are now written to the style attribute with a trailing semicolon. (#6777)
  • Setting the "width" or "height" attribute of cloned "canvas" elements now properly triggers the changes to the canvas. (#6699)
  • JavaScript can access SVG element specific methods, like "getBBox", again. (#6460)
  • "naturalWidth" and "naturalHeight" of "img"-elements are now 0 when the image could not be loaded. (#6831)
  • Fixed table layout no longer has minor accumulated rounding errors in complex cases.
  • "br" elements no longer increase the line-height when affected by styles. (#6733)
  • "br" elements and other line-breaks that cannot be represented in tagged PDFs are now consistently represented by a space in tagged content. (#6780)
  • Text content of form elements is now consistently centered vertically. (#6631)
  • Specific layouts no longer cause exceptions. (#6693, #6701, #6722, #6723, #6820)
  • Converting a basic document using the modular "pdfreactorcore.jar" no longer requires the optional "batik-ext.jar" and "xml-apis-ext.jar" libs when either no license key or a Free Personal license key is used. (#6816)
  • Setting the license key path for the PDFreactor Web Service now works properly on Windows systems. (#6828)
  • Python wrapper API methods "getDocumentAsBinary" and "deleteDocument" now work as intended. (#6829)

New in PDFreactor 8.2.8867.8 (Feb 1, 2017)

  • The bug fixes include:
  • "break-before" styles with the value "left" or "right" used inside tables could lead to layouts not terminating correctly. (#6710)
  • Empty table cells or complex table structures on named pages could cause unexpected page break. (#6711, #6713)

New in PDFreactor 8.2.8867.7 (Jan 21, 2017)

  • The bug fixes include:
  • Complex layouts in named pages no longer cause exceptions. (#6695)

New in PDFreactor 8.2.8867.6 (Jan 18, 2017)

  • The bug fixes include:
  • Complex large tables in named pages no longer cause exceptions. (#6695)
  • Canvas elements created via the cloneNode function now handle their width and height properly. (#6699)
  • Resolved assertion error caused by rare combinations of nested tables. (#6701)

New in PDFreactor 8.2.8867.5 (Dec 26, 2016)

  • The bug fixes include:
  • Tables with collapsed borders that contain only empty rows no longer cause exceptions. (#6658, #6671)
  • Resolved visual discrepancy between the outputs of PDF, image and Preview application when using CSS "letter-spacing". (#6670)
  • The CSS units vw, wh, vmin and vmax can now be used for the font-size of the root element. (#6650)
  • The RPM installer now creates a symlink for the PDFreactor Web Service start script in the "/etc/init.d" folder.

New in PDFreactor 8.2.8867.4 (Dec 8, 2016)

  • The bug fixes include:
  • The setting "continuousOutput" no longer breaks PDFreactor Web Service conversions. (#6642)
  • The Node.JS wrapper API now supports service URLs with "HTTPS" protocol.

New in PDFreactor 8.2.8867.3 (Nov 16, 2016)

  • The bug fixes include:
  • Resolved an issue where a rare combination of styles including "word-wrap: break-word" and "padding-right" could lead to an exception. (#6626)

New in PDFreactor 8.2.8867.2 (Nov 16, 2016)

  • The bug fixes include:
  • Styles from style sheets are now properly applied to nested SVG elements. (#6585)
  • The new REST URIs introduced in PDFreactor version 8.2.8867 are now documented in the REST API documentation.
  • When converting a document directly to binary format (either by using the "convertAsBinary" API method or appropriate REST or SOAP APIs), errors are now correctly relayed to the client.

New in PDFreactor 8.2.8867.1 (Nov 16, 2016)

  • The bug fixes include:
  • When using PDFreactor in a Docker container, the amount of configured CPU cores is now correctly determined and logged.

New in PDFreactor 8.2.8867 (Sep 27, 2016)

  • The new features and improvements include:
  • Improved tables:
  • "col" and "colgroup" elements in tables are now processed, affecting widths, backgrounds and borders. (#3597, #6399)
  • Overhauled computation and visualization of border grids of collapsed tables for improved compliance to the specifications, browser-like layouts and superior visual results.
  • The backgrounds of cells and other table elements are now handled properly, allowing background colors, gradients or images for row groups, column groups and so on.
  • Improved layout, especially width distribution, for certain kinds of fixed tables.
  • Clipping paths of images are now respected. (#5114)
  • Improved visualization of certain borders, thus eliminating artifacts visible in PDF viewers.
  • The configuration option "ignoreAlpha" allows ignoring the alpha values of CSS colors to avoid conformance violations, e.g. to PDF/A-1. (#6513)
  • The proprietary layout information objects in JavaScript now provide DOM ranges for the content of pages.
  • JavaScript DOM "Range" objects now behave according to the latest specifications and provide additional functionalities found in browsers.
  • "DocumentFragment" now exposes multiple additional functions to JavaScript, including "querySelectorAll", which enables the use of AngularJS without workarounds. (#6480)
  • Implemented the JavaScript functionality "parentElement" for Element, TextNode and Document.
  • When content is retrieved from file URLs or other non-HTTP(S) URLs, the "XMLHttpRequest.status" property now returns 200 on success or 404 on failure, instead of always 0.
  • The "async" parameter of "XMLHttpRequest.open" is now respected, allowing for synchronous retrieval of resources.
  • The specificity of CSS selectors containing pseudo-classes is now consistently in line with the CSS3 specification.
  • Added support for the color keyword "rebeccapurple", completing support for CSS Color Module Level 4 keywords as of now.
  • Fonts that cannot be loaded or processed are now logged.
  • Added more hyphenation dictionaries including French.
  • Asynchronous PDF conversions now persist even when the service is restarted.
  • For a service URL of null the web service now falls back to a default value instead of throwing an exception. (#6515)
  • There are new REST URIs to retrieve the converted document with a specified file name:
  • "/rest/document/{id}/show/{filename}.pdf" displays the document in the browser
  • "/rest/document/{id}/download/{filename}.pdf" downloads the document
  • The changes include:
  • HTML "table" elements now have a default "box-sizing" value of "border-box"", as per the HTML5 specification.
  • "fixed" table layout is no longer applied to tables with a "width" value of "auto", as per the CSS specification.
  • Fonts from font directories specified in the integration are now loaded without using custom URL stream handlers.
  • The REST URI "/rest/progress" now returns status code 201 if the conversion is finished. (was 200).
  • The REST URI "/rest/status" now returns status code 200 if the service is responsive. (was 204).
  • Some included Apache libraries have been updated, incl. HttpComponents. (#6531)
  • The bug fixes include:
  • Footnotes in table cells split over multiple pages are now numbered correctly, in content order. (#6364)
  • Table cell borders of collapsed tables no longer erroneously exceed the borders of the parent element. (#6432)
  • Corrected behavior of the JavaScript function "getBoxDescriptions" for elements containing text with a "white-space" value of "pre-line". (#6456)
  • The output format combination of PDF/A-2a and PDF/UA now has the correct identifiers set. (#6461)
  • Calling configuration vararg setters no longer causes exceptions. (#6470)
  • Calling "deleteDocument" now cancels the conversion if it is not yet finished. (#6471)
  • PHP wrapper no longer follows redirects which could be caused by "location" headers. (#6477)
  • SVG elements with percentage values for their width and height attributes now properly resolve their sizes. (#6481, #6485)
  • Java API Wrapper constructor documentation is now correct. (#6492)
  • Corrected behaviors of the JavaScript functions "btoa" and "atob", which were inverted. (#6496)
  • pixelsPerInchShrinkToFit can now be used in combination with continuous output. (#6500)
  • Specific combinations of styled images and dashed borders no longer cause exceptions. (#6502)
  • Certain combinations of whitespace insertions via JavaScript will no longer cause exceptions. (#6506)
  • Web service server parameter "fontDirs" now works correctly with Windows paths. (#6509)
  • Certain combinations of nested styles no longer cause text to be written to the resulting PDF twice, causing it to look too bold. (#6512)
  • Java and .NET wrappers no longer throw exceptions when calling "convert..." methods trying to access an incomplete service path. (#6516)
  • Certain text contents inside HTML comments including multiple minuses no longer cause exceptions. (#6528)
  • The processing preference SAVE_MEMORY_IMAGES no longer causes certain images not to be loaded. (#6529)
  • Soft hyphens in meta data no longer cause the creation of invalid PDF/A documents. (#6532)
  • PDF scripts can now be added via CSS, when none where set via the API. (#6552)
  • TIFF images containing additional channels are now supported and embedded losslessly, keeping their exact pixel values, color space and ICC profile.
  • If there is exactly one additional channel it is considered an alpha channel. (#6553)
  • Numbered list items are now numbered correctly when floated. (#6556)

New in PDFreactor 8.1.8613.1 (Jul 20, 2016)

  • The bug fixes include:
  • Positioned floated elements inside positioned elements were covered by the backgrounds of those elements. (#6474)
  • Images with max-width styles and text next to them could unnecessarily overflow table cells. (#6448)
  • Calling Java Configuration setters with a variable amount of arguments could cause exceptions. (6470)
  • Java and .NET wrappers were missing the "getDocumentAsBinary" API method.
  • Error handling in Java and .NET wrappers when using "...AsBinary" API methods caused exceptions.

New in PDFreactor 8.1.8613 (Jun 30, 2016)

  • The new features and improvements include:
  • Improved support for the creation of accessible documents, including support for PDF/UA as well as generally improved PDF tagging, conforming to the Matterhorn Protocol. (#6082)
  • Support for the creation of PDF/X-4p documents. (#6164)
  • Text in SVGs is now only converted to vectors when necessary, reducing the average size of created PDF documents. (#6091)
  • Rasterization of SVG is now required in fewer cases and produces higher quality output.
  • Improved logging and handling of CSS errors, leading to significantly less skipping of correct CSS. (#6153, #6229, #6234)
  • Improved logging of internal exceptions, which are now mentioned on log level "warning" with detailed information on log level "finer". (#5452)
  • Improved width computation for images with percentage widths inside tables, floats, positioned elements and inline-blocks with auto widths. (#6334, #6394)
  • Added option to specify a custom XMP packet for the output PDF. (#5996)
  • The log can now be retrieved from the wrapper APIs after the conversion failed. (#6226)
  • Improved painting order, now respecting the (otherwise unsupported) property "opacity". (#6214)
  • The CSS property "text-align-last" can now be used without the -ro- vendor prefix.
  • Improved resource loading, including support for HTTP redirects and more kinds of data URIs. (#6196)
  • Added support for "Node.contains()" in JavaScript. (#6110)
  • Improved error handling for barcodes.
  • HTTP requests for resources (like images or style sheets) now time out if the server does not respond for 60 seconds. Time out can be configured via the new API property "resourceRequestTimeout". (#6345)
  • Conversions running on the web service can now be canceled. (#6170)
  • The PDFreactor web service is now also available as a self-contained WAR file. (#6031)
  • Added Node.js web service wrapper API. (#6302)
  • The wrappers are now under the MIT license.
  • Updated the Jetty web server used by PDFreactor Web Service to version 9.3.9.
  • Implemented hexadecimal notation for rgba colors (four or eight digits).
  • The CSS property "box-decoration-break" now supports slicing background images of block elements. (#6348)
  • It is now possible to retrieve the PDF directly as a Base64 encoded string using the REST API.
  • The changes include:
  • The Java web service wrapper API is now based on REST. There are the following API changes:
  • All classes are now in the package "com.realobjects.pdfreactor.webservice.client"
  • When manually specifying a web service URL it must now end in "REST" instead of "SOAP".
  • Connections to the web service now have a configurable timeout. The default is 10 minutes.
  • The only explicitly thrown exception type is now "PDFreactorWebserviceException".
  • Otherwise the API is backwards compatible.
  • The .NET web service wrapper API is now based on REST. There are the following API changes:
  • All classes are now in the namespace "RealObjects.PDFreactor.Webservice.Client".
  • When manually specifying a web service URL it must now end in "REST" instead of "SOAP".
  • The default timeout for connections to the web service is now 10 minutes.
  • All method and property names are now capitalized.
  • Otherwise the API is backwards compatible. It requires the Microsoft .NET Framework 4.0 and is not COM visible.
  • Linux control groups are now respected when determining CPU count.
  • Font directories specified via the PDFreactor API are now scanned recursively, including their subdirectories.
  • The XML schema definition of some SOAP types had been revised to make SOAP messages sleeker. Integrators that use their own SOAP clients should update them.
  • Excessively nested "table" elements (starting from the eighth) now have a default style of "table-layout: fixed".
  • Removed the bin/pdfreactorwebservice.vmoptions file. If any custom Java parameters (such as "-Xmx") were added to this file by the integrator in a prior PDFreactor version, these parameters should now be set in jetty/start.ini instead.
  • The bug fixes include:
  • Added support for more combining characters, including technical and Arabic ones. (#6207)
  • Some bidi control characters were visible in resulting PDFs. (#6208)
  • Improved Unicode support in CSS, including a fix for multi-byte characters (e.g. em-quad) in combination with leaders. (#6188)
  • Interactive PDF forms and embed elements did not respect transformations and "-ro-scale-content". (#6295, #6355)
  • Table footers were laid out multiple times per page for tables with no header. (#6305)
  • Dynamically inserted script elements as well as their load events were not executed in the expected order.
  • The result of "XMLHttpRequest.getAllResponseHeaders()" contained brackets around its items.
  • Backgrounds could be hidden by fully transparent borders for certain combinations of borders applied to the same element. (#6417)
  • Relative ICC profile URLs were not resolved. (#6316)
  • "Textarea.value" did not work as expected. (#6272)
  • The page "size" CSS property treated the singular value "landscape" as "A4" instead of "A4 landscape". (#6330)
  • The style "display: inline-block" could not be applied to generated content (was treated as "inline"). (#6177)
  • Block images could not be placed on named pages. (#5477)
  • The style "text-overflow: ellipsis" was not applied in table cells and caused exceptions in some scenarios. (#6182, #6243)
  • When omitted the second parameter of the CSS transform functions "translate" and "skew" did not default to 0. (#6262)
  • The width of boxes containing overflowing text was computed incorrectly. (#6223)
  • Setting enableDebugMode to false did not disable debug mode. (#6239)
  • Font caching could result in unnecessary exceptions being shown. (#6231)
  • JavaScript wrapper API did not handle connection timeouts. (#6230)
  • Named conversions caused different exception types to be thrown. (#6220)
  • Canvas elements could share the same context leading to unexpected results. (#6218)
  • HTTP request headers set via the API were not used to load resources referenced via embed or object elements. (#6209)
  • Font embedding could not be disabled. (#6057, #6203)
  • JavaScript errors in iFrames could cause PDF conversions to abort. (#6124)
  • SVGs containing multiple gradient color stops with the same offset could not be converted. (#6133)
  • SVG gradient always had their "stop-opacity" values rounded to either fully opaque or fully transparent. (#6159)
  • Order of footnotes on a page could be wrong in rare cases.
  • Some footnotes where placed to far to the rights (#6397)
  • Floated or positioned elements inside inline-block elements were laid out incorrectly. (#6260, #6087)
  • PDF merging can now handle more uncommon PDF files and has improved error handling, including a specific "PdfMergeException". (#6073, #6088)
  • Created PDF/A documents containing certain fonts caused some validators to return "The width for character ... does not match". (#6369)
  • pdfreactorcore.jar contained some third party libraries. (#6163)
  • Blocks in inline elements were moved after their inline siblings. (#6360)
  • Static pages of the PDFreactor Web Service (such as the PDFreactor RIO demo) did not load properly when request logging was enabled. (#6366)
  • Hexadecimal CSS color values with an invalid number of digits resulted in black color instead of being ignored. (#6383)

New in PDFreactor 8.0.8234.1 (Feb 16, 2016)

  • The bug fixes include:
  • Large table row spans were not applied correctly (#6178)
  • Proprietary layout information in JavaScript returned box descriptions in wrong order (#6169)
  • The value of the "text-overflow" style was applied even when "overflow" was "visible" (#6161)
  • PHP wrapper was not compatible with PHP 7 (#6138)

New in PDFreactor 8.0.8234 (Feb 6, 2016)

  • This release includes the following new features and improvements:
  • Added support for the style “text-overflow: ellipsis”
  • Conversions can now terminate on conditions like timeouts.
  • Added option to set headers and cookies for connections from the wrappers to the PDFreactor Web Service
  • Some of the bug fixes in the new release include:
  • Eliminated a memory leak in PDFreactor Web Service
  • jQuery 2.2.0 was not supported due to missing method “createHTMLDocument”
  • Relative URLs missing only the protocol where not resolved
  • The CSS function “local” in @font-face rules did not have any effect

New in PDFreactor 8.0.8162 (Dec 19, 2015)

  • The bug fixes include:
  • In JavaScript bound functions could not be used as event listeners and "getOwnPropertyNames" could not be called on "window" breaking some libraries incl. React. (#6039, #6060)
  • Table and column widths where computed inaccurately for certain combinations of styles (#6015, #6017)
  • Width computation was incorrect for absolutely positioned blocks with a width of 0px and for elements with a with of 100% inside elements with a with of auto. (#6047, #6050)
  • Lines could wrap prematurely in some situations (#6046)
  • Certain combinations of generated content could break BiDi processing. (#5651, #5746, #5981)
  • Empty elements in HTML could cause unexpected results after XSLT transformations. (#5994)
  • The web service created a superfluous font cache folder inside the home directory on startup. (#6056)
  • The new features and improvements include:
  • Added support for the additional image formats ICO, CUR, PAM, PBM, PGM, PPM and BMP as well as limited support for PSD, DCX, ICNS and RBBE. (#6049)
  • Added support for the CSS pseudo classes "checked", "enabled" and "disabled". (#5972)
  • SVG now supports the color constant "transparent". (#6040)
  • Improved error reporting in web service, e.g. for illegal configurations. (#6027)
  • Web service now auto detects configuration format for generic mime types. (#6061)
  • When multiple options of a select element are selected the last one is displayed instead of the first one, which is the common browser behavior for this illegal situation. (#5752)
  • Python commandline is now executable and contains a shebang (#6029, #6030)

New in PDFreactor 8.0.8096 (Nov 20, 2015)

  • The bug fixes include:
  • Resolved a critical issue with the PDFreactor Web Service that could cause empty documents to be returned when converting multiple documents in parallel.
  • Solved exception that sometimes prevented loading documents containing background elements in combination with gradients and borders. (#5987)
  • Solved an issue where calling native JavaScript methods with too many arguments caused an exception. (#5663)
  • Relative URLs in CSS "xhtml" functions no longer log an exception (#5985).
  • The improvements include:
  • Added support for the CSS3 general sibling combinator "~" (tilde).
  • Improved JavaScript language support for ECMAScript 6 features.

New in PDFreactor 8.0.8064 (Nov 20, 2015)

  • The new features include:
  • Improvements to the PDFreactor Web Service API:
  • Now supports REST.
  • Added JavaScript, Java and command line wrappers.
  • The command line wrapper for the Web Service API supports batch processing (incl. wildcards).
  • Improved merging with existing PDF documents:
  • Pages from existing PDF documents can now be used like images and are embedded without quality loss. (#5192)
  • When appending, the page order can be configured freely using pages from all documents. (#5833)
  • When overlaying documents, the longer document can now be trimmed to the length of the shorter one. (#5009)
  • Improved text layout:
  • Implemented support for baseline grids via the properties "-ro-line-grid" and "-ro-line-snap". (#5607)
  • "line-height: auto" is now resolved similarly to common browsers.
  • Improved line height computation and vertical positioning of text.
  • Font fallback no longer impacts the line height or vertical positioning. (#5924)
  • PDFreactor now respects the kerning of fonts. (#5243)
  • Appearance of underline is no longer influenced by the styles of child elements.
  • Implemented new proprietary CSS rule for global document properties:
  • Whether the first page is a left or right page, optionally separately for layout and PDF viewer. (#5600)
  • The initial zoom level or setting when opening a PDF. (#5521)
  • Set in which view mode the PDF should be opened, e.g. 2 columns.
  • The initial page to scroll to when opening a PDF.
  • PDF/X is now supported, specifically PDF/X-1a:2001, PDF/X-1a:2003, PDF/X-3:2002, PDF/X-3:2003 and PDF/X-4. (#5002)
  • Now supporting all PDF/A formats. (#5713)
  • The CSS function "calc" is now supported.
  • The CSS property "box-sizing" is now supported. (#5414)
  • Completed support for CSS3 background images including multiple layers and the sizes "cover" and "contain", as well as proprietary origin values for the entire page, optionally including the bleed.
  • Implemented the CSS property "object-fit" including the values "cover" and "contain". (#5682)
  • Implemented new CSS page pseudo class ":-ro-nth" to address specific page numbers and patterns.
  • Implemented new CSS page pseudo class ":-ro-last" to address the last page of a document. (#4987)
  • The "box-decoration-break" CSS property is now supported for block elements.
  • Now supporting the CSS property "tab-size". (#5730)
  • Added possibility to force PDFreactor to evaluate any desired CSS media type rules, e.g. "@media screen". (#5661)
  • Added support for CSS media features (e.g. "@media (max-width: 12cm)") including configuration of returned values. (#5683)
  • Added JavaScript property "window.devicePixelRatio", with the same value as the media feature "resolution". (#5967)
  • Added media type "-ro-pdfreactor" for styles to be used exclusively by PDFreactor. (#5325)
  • Now supporting all CSS length units including "rem", "ch", "vw", "vh", "vmin", "vmax" and "q". (#5822, #5647)
  • Added support for the HTML5 element "wbr" (word break opportunity).
  • Page order now allows addressing the nth-last page. Use negative page numbers to select the n-th last page. (#5680)
  • Added support for embedding JavaScript into PDFs to be executed by Adobe Reader on load or certain events. (#5919)
  • Added support for Spot colors (incl. Pantone). (#5457)
  • CMYK colors now also support alpha values. (#5877)
  • Individual PDF IDs ("named destinations") can now be disabled via the CSS style "-ro-anchor: none". (#5735)
  • Added support for SVGZ images. (#5705)
  • In addition to images, "safe memory" mode now also reduces memory footprint for SVGs. (#5696)
  • Custom messages can now be logged in the PDFreactor log.
  • Added constant that returns the PDFreactor version. (#4694)
  • The pdfreactor.jar library now supports OSGi. (#5116)
  • A custom URLStreamHandler object can now be set for PDFreactor. It will be used by PDFreactor to load resources. (#5732)
  • Added support for Chart.js 1.0.2. (#5968)
  • The improvements include:
  • Included Noto Fonts, Droid Sans Fallback and Quivira to support non-Latin characters (including CJK and Arabic) and symbols on systems without appropriate fonts.
  • Massively improved performance on IBM JRE 6. (#5677)
  • Updated the Jetty web server used by PDFreactor Web Service to version 9.
  • Java VM options for the PDFreactor Preview app can now be set in a .vmoptions file.
  • Added new PDFreactor packages for Linux that include a JRE. (#5662)
  • Missing resources of various types are now logged as warnings (#5841).
  • The bug fixes include:
  • PDF size can no longer increase because of dashed or dotted borders with small widths. (#5525)
  • Form elements no longer need to be enclosed by a "form" element in order to be properly converted to the appropriate interactive PDF form elements. (#3676)
  • Fixed issue where soft hyphens were always displayed when the font missed a glyph for them. (#5926)
  • Soft hyphens that were not visible in the PDF under certain specific circumstances are now displayed. (#5922)
  • Font fallback no longer behaves differently in certain scenarios affected by hyphenation. (#5921)
  • Forced line breaks are no longer moved into the next line under specific circumstances. (#5888)
  • Fixed excessive creation of temporary font files under certain circumstances. (#5444)
  • The SVG "visibility" attribute now behaves correctly for SVG "g" element. (#5672)
  • MathML elements now use fonts specified via the API. (#5959)
  • Using the "innerHTML" JavaScript function on script elements now returns the expected content. (#5893)
  • Table headers were not repeated if the table was split between "tbody" elements. (#5903)
  • Fixed JavaScript error when supplying more than one argument to DOMTokenList methods "add" and "remove". (#5894)
  • Fixed layout issue when flowing regions onto a named page. (#5876)
  • The width of a floated element is now calculated correctly when it contains an element with "max-width". (#5738)
  • Fixed issue where documents containing tables with values for "rowspan" much larger than the actual number of rows, could not be converted. (#5870)
  • When non-embeddable fonts are encountered, they are now properly skipped and appropriate warnings are logged. (#3389, #5410)
  • URLs set via "addFont" are now resolved against the API or document base URL (#5499).
  • The width of an element with "overflow: hidden" is now computed correctly if it is next to a float. (#5739)
  • Floats from empty lines no longer overlap with content and are now positioned correctly. (#5313)
  • Fixed issue where table column widths where incorrect for tables containing empty table row groups. (#5579)
  • Using "enableDebugMode()" no longer leads to an exception when the document contains an element with a namespace attribute. (#5655)
  • Fixed issue that caused an exception when replaced elements exceeded the page as ExceedingContent. (#5803)
  • Solved issue where the table cell alignment was wrong when the cell contained an empty block inside an inline-block. (#5719)
  • Awesomizr.js could generate incorrect page numbers under certain circumstances. (#5641)
  • Tab characters are no longer displayed as boxes in certain scenarios. (#5731)
  • Fixed issue where "overflow: visible" did not work for SVGs. (#5694)
  • applicationValue("com/realobjects/pdfreactor/start-page-number") now returns the correct value instead of always returning "1". (#5117)
  • Fixed elements being displayed incorrectly in combinations of "position: relative" and "overflow: hidden".
  • The CSS generated content "leader(space)" is displayed correctly again. (#5052)
  • Fixed NPE in relation to iFrames. (#5934)
  • Elements with "position: fixed" are now sized correctly. (#5367)
  • The HTML "figure" element is now mapped to the "Div" PDF tag instead of the "Figure" tag. (#5673)
  • The height for "textarea" elements with "height: auto" is now calculated correctly. (#5130)
  • The changes include:
  • The previous PDFreactor API has been moved to the "legacy" sub-package and replaced by a new API. Please see the readme file for further information.
  • The officially recommended Java VM now is Oracle JRE 8.
  • Apple JRE 6 is no longer supported. Please use the latest Oracle JRE.

New in PDFreactor 7.0.7447.1 (Nov 20, 2015)

  • The bug fixes include:
  • Performance issues when viewing the resulting PDFs in Chrome

New in PDFreactor 7.0.7447 (Nov 20, 2015)

  • The new features and improvements include:
  • The CSS color function "rgba" is now available in SVGs. This is used by various charting libraries, primarily for 3D charts (#5549)
  • The CSS color function "cmyk" is now available in SVGs, making "RO-CMYK" ICC colors obsolete (still supported for compatibility)
  • SVG elements are now properly affected by styles set in the containing HTML document (#5543)
  • Improved BiDi and Arabic shaping in SVGs (#5588)
  • Script tags with an unknown type are now skipped (#5550)
  • The bug fixes include:
  • Prefixed CSS properties in SVG elements caused the following properties to be ignored (#5603)
  • SVGs referenced via "embed" elements were not loaded (#5591)
  • Converting SVGs including links could in rare cases lead to exceptions (#5633)
  • Listeners for the "load" event added via "window.addEventListener" were not triggered (#5621)
  • URLs containing legal line breaks could not be processed (#5582)
  • In some cases the max-width property of images inside tables was not taken into consideration when determining the width of the table cell and table (#5609)
  • "bottom" positioned elements with no fixed height had wrong vertical positioning if they had vertical margins, paddings or borders (#5623)

New in PDFreactor 7.0.7375 (Nov 20, 2015)

  • The new features and improvements include:
  • Vastly improved support for JavaScript libraries, including "AngularJS" and "Leaflet", due to numerous JavaScript, SVG and DOM related improvements.
  • Lines and shapes are now handled in a different way that avoids issues displaying thin lines in certain PDF viewers.
  • Debug mode no longer disables logging to the attached logger or the console. The log attached to the PDF now properly shows HTML and XML content as source.
  • The "applyAdaptivePageBreaks" method of the "Awesomizr" JavaScript library is now more robust.
  • The bug fixes include:
  • Tables with the "table-layout" CSS property set to "fixed" and containing rows with varying amount of columns could cause non-terminating layouts.
  • Tables with the "table-layout" CSS property set to "fixed" and "border-collapse: collapse" or containing cells with borders or padding could be laid out too wide. (#5595)
  • Rasterization of complex SVG graphics at "-ro-rasterization-supersampling" values larger than "2" could fail in certain JREs. (#5556)

New in PDFreactor 7.0.7290 (Nov 20, 2015)

  • The bug fixes include:
  • Text of floated elements inside positioned elements was added to the PDF twice at the same location (#5528)

New in PDFreactor 7.0.7279 (Nov 20, 2015)

  • The new features and improvements include:
  • Updated Unicode support to Unicode 7.0
  • The bug fixes include:
  • In some cases the widths of thin lines, incl. underlines of small text, were to small
  • The library awesomizr.js contained a superfluous log output

New in PDFreactor 7.0.7270 (Nov 20, 2015)

  • The bug fixes include:
  • PDF merging could cause exceptions

New in PDFreactor 7.0.7267 (Nov 20, 2015)

  • The new features and improvements include:
  • The JavaScript library Awesomizr can now be used to create multiple tables of contents
  • When creating a table of contents with Awesomizr, you can now specify a function which determines the text of the given entry for the table of contents or skips the entry entirely
  • Now setting the document URL as "referer" header for HTTP requests which improves compatibility with external resource providers like Typekit
  • The bug fixes include:
  • PDF merging in conjunction with encryption caused exceptions (#5510)
  • Images in table headers caused exceptions when the table was spanning multiple pages (#5481)
  • When the subset of a font cannot be created, an exception was thrown instead of embedding the entire font

New in PDFreactor 7.0.7243 (Nov 20, 2015)

  • The new features and improvements include:
  • HTMLAnchorElement and Location now implement URLUtils (read-only), which drastically improves compatibility to AngularJS (#5467)
  • Tables spanning a large amount of pages are now converted significantly faster
  • Improved caching of web fonts, reducing the amount of temporary font files (#5444)
  • The Python API now also supports Python 3 (#5473)
  • Official support for Oracle JRE 8
  • The bug fixes include:
  • Images embedded in SVGs as data URIs could not be converted (#5432)
  • AFM fonts in the system font directory could lead to missing fonts in the resulting PDFs (#5425)
  • Some methods where missing in the wrapper APIs or did not work properly (#5422, #5423)
  • Clipping for "overflow: hidden" was not determined correctly
  • Setting "font-weight: lighter" in an @font-face rule caused exceptions (#5417)
  • html(string) method of jQuery 2 caused exceptions (#5415)
  • When CMYK was set as default color space and an error page was created an exception was thrown
  • Command line parameter "defaultlanguage" was misspelled as "defualtlanguage" (#5455)
  • Minor fixes to stacking contexts and related properties