Some test text!

Discord Logo

Chat with us

PDFTron is now Apryse, learn more here.

Go / Changelog / v9.0



PDFTron is now Apryse, learn more here.

Version 9.0.0 Changelog (April 12th, 2021)

New Features

Changed Behaviour

  • Moved X509Certificate, DigestAlgorithm, ObjectIdentifier, X501AttributeTypeAndValue, X501DistinguishedName and X509Extension from pdftron.PDF to the pdftron.Crypto namespace.
  • Removed HTMLOutputOptions.SetReflow which wasn't usable in normal builds and overlaps in concept with the new HTMLOutputOptions.SetContentReflowSetting.

Other Changes


  • [pdf] Updated Duktape to 2.6.0.
  • [jpg] Updated libjpeg-turbo to 2.0.6.
  • [tiff] Updated libTIFF to 4.2.0.
  • [pdf] Updated OpenSSL to 1.1.1j.
  • [all] Added macOS arm64 slice for Apple Silicon.
  • [all] Enabled better optimization settings on Apryse SDK on Windows.
  • [xfdf] Significantly optimized the performance of XFDF export.
  • [pdf] Optimized creation of PDFDoc, SDFDoc, FDFDoc and ObjSet objects. This has a significant impact on cases that create a large number of these objects.
  • [xfdf] Improved support for importing XFDF into PDFs with corrupt Annotations array.
  • [xfdf] Generating consistent names on all unnamed annotations for during xfdfexport. This is especially helpful for realtime collaboration use-cases.
  • [xfdf] Adjusted rectangle, ellipse, export and import to support nonstandard rotation in import and export.
  • [pdf] Adjusted logic for retaining text spacing adjustments, so that it would work with interleaved marked content operators.
  • [pdf] Avoid "faded colors" during PDF rendering when color management is disabled and overprint is off.
  • [pdf] Avoid writing unnecessary colors and colorspaces when generating annotation appearance streams.
  • [pdf] Adjustment to repair corrupt documents with negative or unreasonably large object numbers.
  • [pdf] Erase invalid colorspace entries in ImageMasks during PDF/A conversion.
  • [svg] Better handle corrupt documents with unbalanced q/Q operators in forms during Convert.ToSvg.
  • [pdf] Added support for trusting intermediate certificates in the chain during for Digital Signature Verification.
  • [pdf] Adjusted corrupt document processing logic to allow for an XRef entry following startxref. Previously this would be treated as garbage data and the rest of the PDF would be skipped.
  • [pdf] Improved reading for field values from XFA to better handle strangely formed inheritance structures.
  • [xod] Adjusted flattening to disregard cases where the blend mode is specifically set to normal. This reduces unnecessary flattening for ToXod and Flattener improving run time and output quality in these cases.
  • [pdf] Optimized PDF/A conversion for files with a lot of font objects.
  • [pdf] Optimized text extraction to more efficiently extract styles. This primarily impacts text selection, reflow and use cases that use TextExtractor directly to obtain text styles.
  • [pdf] Added support for dashed borders on checkboxes.
  • [pdf] Added support for auto-tiling of very large tiff images.
  • [pdf] A number of new APIs were exposed in the pdfnet-node package.
  • [pdf] Handle Exif rotations through the UniversalConversion methods on the Convert class.


  • [pdf] Fixed a parsing issue where unusually structured encrypted documents could fail to load.
  • [pdf] Avoiding a crash when using incremental download on rare documents that start with a null object.
  • [xfdf] Fixed an issue with PDFDoc.FDFUpdate where it could remove RichMedia and other less commonly used annotation types.
  • [pdf] Fixed incorrect text extraction word break issue when text includes a vowel sign.
  • [xfdf] Fixed an issue in PDFDoc.FDFUpdate where, in rare situations, radio buttons could be incorrectly matched and not function as expected.
  • [pdf] Fixed a problem where certain PDF JPEG2000 images with 4 bits per component would display as darker than they should.
  • [pdf] Fixed an issue where some documents with XFA values wouldn't take these into account when displaying the selected state of check boxes and radio buttons.
  • [pdf] Fixed a problem where the Metadata would still be encrypted even if using SetEncryptedMetadata(false).
  • [pdf] Fixed a problem with PDFDocInfo.GetSDFObj() where it would return the trailer rather than the Info object as would be expected.
  • [pdf] Fixed an issue with Optimizer where, on certain documents and when subsetting fonts, it could break the appearance of hidden annotations. This could lead to issues later when the annotation becomes no longer hidden.
  • [pdf] Adjusted page insertion to clear any DigitalSignatures when inserting into a new document. Previously these would be included, but invalid.
  • [pdf] Adjusted handling of Field Flags to ignore them when they are incorrectly applied to Widget only dictionaries.
  • [pdf] Adjusted PDF/A validation to not provide an error for Device colorspaces (e.g. DeviceRGB) if there is an associated Default colorspace in the resource dictionary. (e.g. DefaultRGB).
  • [pdf] Fixed an issue with the generated appearance of line annotations with inline captions where the line would go through the text.
  • [pdf] Fixed an issue with handling of 0 length streams that could lead to slow and unexpected file growth. This issue was especially troublesome when saving large files.
  • [pdf] Fix for incorrect color in some DCTDecode images where the embedded colorspace conflicts with the PDF colorspace.
  • [pdf] Closed potential security issue with FileAttachment annotations, where a specifically constructed annotation could access external servers during XFDF export.
  • [pdf] Generated fully selectable text when generating complicated shaped text output.
  • [pdf] Fix for potential non-optimal performance when filling an internal object cache.
  • [tiff] Fix for potential crash when reading some YCbCr encoded images.
  • [pdf] Fixed an issue with creating bad width tables in fonts covering codepoints outside the basic multilingual plane.
  • [pdf] fixed an issue with bad lookups in a font's toUnicode map when handling codepoints outside the basic multilingual plane.
  • [emf] Now correctly handle PDFs embedded within EMF files.
  • [all] Fix for mishandling of short font names in all caps, like "OCR-B".
  • [all] Fixed bug with custom font servers which could result in missing the first item in a specified character range.
  • [all] corrected mapping of fonts specified as both "light" and "bold".
  • [all] Fix for incorrect font substitution on Windows systems for some symbol characters.


  • [office] Can now positively identify encrypted office documents.
  • [pptx] Fix for cases where a shape had deeply nested reference to other diagrams.
  • [docx] more consistent handling of table widths specified as percentages.
  • [office] Fixed issue that could result in incorrect character selection in documents with explicitly specified zero width non-break space characters.
  • [docx] Now correctly take endnote number formatting into account.
  • [office] Fixed bug with superscript/subscript handling in some cases when resolving local and derived run styles.
  • [xlsx] More robust handling of malformed number formatting codes.
  • [office] Fixed error in PDF structure output for table cells when converting office->PDF.
  • [docx] Fix for semi-transparent fills in some office drawings.
  • [docx] More robust handling of grouped office drawings with no shape ID.
  • [office] Fixed the default label placement for 3d bar graphs.
  • [office] Fixed error with occasional missing chart per-data-point labels.
  • [pptx] Added missing support for column layout.
  • [docx] Fix for incorrect handling of page breaks immediately preceding a continuous section break.
  • [docx] Tuned line spacing to be an exact match to MS Word in more situations.
  • [docx] Added support for graphic frames.
  • [docx] Improved interaction between tables and floating content.
  • [pptx] Fixed mishandling of tab characters within some lists.
  • [office] Now correctly handle the "flatTx" attribute.
  • [docx] Fix for potential crash in office files with malformed 'oMath' runs.
  • [docx] Corrected handling of the 'auto' spacing property for the first and last paragraph in a document.
  • [xlsx] Changed default value for unspecified opacity to opaque, rather than transparent.
  • [xlsx] Implemented support of rich text for inline strings in Excel.
  • [xlsx] Fix for handling of documents with no specified default styles.
  • [xls] Fix for potential crash on some malformed xls documents.
  • [xlsx] Optimized XLSX memory handling, now use much less memory when converting very large documents.
  • [xlsx] More robust handling of malformed formulas in xlsx files.
  • [office] Fixed a small memory leak (32 bytes per document).
  • [pptx] Fix for not completely resolving the font style for some text.
  • [office] Correctly handle data points outside the bounds of the chart axes.
  • [office] Now handle clipping for all shapes, not just images.
  • [office] Fixed grid line spacing for non-East Asian fonts.
  • [docx] Fixed auto spacing between list paragraphs.
  • [docx] Fix for too-high line spacing for some text with colored backgrounds.
  • [office] Fix for incorrect parsing of percentage values that have percent symbols in them already.
  • [docx] Fix for mishandled table borders in some isolated cases.
  • [docx] Corrected default behaviour for non-specified vertical anchor in floating tables.
  • [docx] Fix for cases where text boxes had a non-zero position and a specified wrap rectangle.
  • [docx] Implemented bi-level image effect.
  • [docx] Fix for unnecessary internal rounding of some fractional font sizes.
  • [office] Fix for mishandling of some stroked text when converting to PDF.
  • [office] Fixed drawing of stacked charts with non-zero base value.
  • [xlsx] Removed exception when attempting to place some out-of-bounds content.
  • [office] Added support for the luminance image effect.
  • [office] Fix for mishandling of Thai text justification.
  • [pptx] Fix for handling of negative indentations.
  • [office] Fixed square text wrapping of rotated images.
  • [office] Fix for handling of text spacing in fully justified text produced in older Word versions.
  • [office] Fixed bounding box of the circular arrow and pie wedge shapes.
  • [xlsx] Fix for scaling of grouped shapes with the two-cell anchor style.
  • [docx] Ensure that we draw group shape elements by order of appearance.
  • [office] Fixed issue with misaligned right-to-left text in rows with trailing spaces.
  • [office] Much improved office equation handling.
  • [office] Now translate some elements of user-specified structured document tags within OOXML to the converted PDF.
  • [xls] Fixed hidden sheet state conversion for xls.
  • [xls] Now correctly ignore comment shapes.
  • [office] Implemented support of semi-transparent gradient fill.
  • [xlsx] Now support excel rounding functions.
  • [docx] Implemented handling of vanished paragraphs.
  • [doc] Fixed a number of bugs with handling of numbered lists.
  • [docx] Fixed automatic text color on a dark page background.
  • [office] Fixed a performance issue with chart drawing, no longer waste time on non-visible elements.
  • [xlsx] Fix for incorrect ISBLANK implementation.
  • [xlsx] correct handling of row custom height and dyDescent.
  • [docx] Better handling for custom page numbering mixed with non-custom.
  • [pptx] Take trailing blank lines into account when centering text vertically.
  • [docx] Correctly handle cases where a paragraph contains only floating picture anchors and a line break.
  • [xlsx] Do not wrap text in date-formatted cells.
  • [xls] Implemented AutoFilter support for XLS format conversion.
  • [office] Added support for arbitrary text rotations.
  • [office] Added support for text which is horizontally scaled to it's container.
  • [office] Implemented double and heavy underlines and strike through styles.
  • [xlsx] Added missing support for some forms of horizontally merged cells.
  • [office] Many improvements to chart drawing and axis positioning.

Get the answers you need: Support