Added an option for PDFDoc.MergeXFDF() to support nonstandard rotations (that are not a multiple of 90) when generating annotation appearances. This can be necessary to generate appearances that match how annotations are displayed in WebViewer. (MergeXFDFOptions.SetUseNonStandardRotation())
Added options for conversion from PDF to Word, PowerPoint, Excel, and HTML (in e_reflow_full mode) that adjust how headers, footers and footnotes should be handled in the output. Options include removing them, including them as normal content, or recovering them as headers, footers, or footnotes. (SetDetectAndRemoveHeadersAndFooters() and SetDetectAndRemoveFootnotes() in WordOutputOptions, PowerPointOutputOptions, ExcelOutputOptions and HTMLOutputOptions)
Improvements:
[xps] Significantly improved PDF to XPS conversion performance when handling unmodified PDF documents with many annotations.
[pdf] Improved support for loading corrupt password protected PDF files with an incorrectly long Perms entry. Previously the password would not be accepted.
[pdf] Improved support for rendering corrupt PDF files containing non-standard fonts that are missing the FontDescriptor. Previously text using these fonts would be displayed incorrectly or not at all.
[pdf] Base14 fonts are now created without an unnecessary Encoding entry when the font is not embedded. This can improve the display of check box appearances generated by the SDK in some PDF viewers.
[java] Added support for usage of a predefined tmpdir 'com.pdftron.systemloadtmpdir' rather than the default 'java.io.tmpdir'. This provides an alternative way to load the library when the user path contains Unicode characters that can prevent Java's System.load() from working.
[pdf] Improved support for rendering broken Type0 fonts that come with no Registry/Ordering information. Previously this could lead to unexpected characters being rendered.
Bugfixes:
[pdf] Fixed an uncommon issue with nested fields when merging XFDF to PDF. Previously the field content would not be merged to the PDF.
[ocr] Fixed a rare issue related to the IRIS OCR module when unusually large pages exceeded maximum pixel limitations. Previously OCR could fail with error 'Image side [...] out of limits. Max: 32768 in SetImage()' or could quietly not detect any words.
[xps] Fixed an issue when converting from PDF to XPS where text or paths formed by many thin lines could have spiky shapes around the edges (caused by extended miter joins) in the resulting XPS file.
[pdf] Fixed a crash when deleting a specific type of corrupt PDF after ElementBuilder.CreateForm(Page) was used.
[pdf] Fixed a divide by 0 crash which could occur when rendering some PDF files containing images of 0 width or height.
[java] Fixed a potential memory leak for Java ObjectIdentifier and TimestampingConfiguration objects.
[java] Fixed an issue where a Java TimestampingConfiguration object would become invalid after a call to TestConfiguration(), causing subsequent usages of the object to crash.
[pdf] Fixed a memory leak that could occur when using Font methods to create a new font multiple times from the same path or memory buffer.
[pdf] Fixed a crash in FreeText appearance generation that would occur when the rich text entry was corrupt and missing the <body> element.
[pdf] Fixed a potential issue with FreeText appearance generation where some of the glyphs close to the top of the annotation could be cut off, particularly accents.
[image] Fixed a memory leak that could occur during conversion from TIFF to PDF with Convert.StreamingPDFConversion() or Convert.UniversalConversion().
[node.js] Added a few OfficeToPDFOptions functions missing from Node.js.
[pdf] Fixed issues with the functions Widget.GetTextColor(), Widget.GetFontSize() and Widget.GetFont() where the default appearance would not be inherited from parent fields. Previously they could incorrectly return a default value instead (black text color, font size 0, and Helvetica).
[pdfa] Fixed an issue where certain types of pushbutton appearances could be missing after converting to PDF/A.
[pdf] Fixed an error refreshing FreeText annotations on Linux where we could fail to find system fonts with spaces in their names (e.g., "Times New Roman").
[pdf] Fixed an issue with redaction of vector graphics defined clipping paths that are completely enclosed in the redaction area. Previously this could lead to invisible content becoming visible in rare cases.
[cad] Fixed an issue where the DWG model pages defined in a specific way could be missing from the output PDF.
[pdf] Fixed an issue with PDFDoc.FlattenAnnotations() when handling hidden or invisible annotations. Previously the annotations could become visible after flattening.
[pdf] Fixed a crash that would occur when flattening or converting to XOD extremely uncommon and complex pages, with over 10,485,760 elements.
[pdfa] PDF/A conversion will now skip creating empty appearance streams when not required. Previously this could wipe out the borders of Link annots for any PDF/A conformance level, and the appearance of non-Widget annots when converting to PDF/A-1.
[.net] Fixed an issue where calling function Markup.SetTitle() with a non-ASCII string in .Net Core/Standard/5/6/7/8 would lead to a mangled annotation title.
[cad] Fixed an error that occurred only when converting specific DGN files to PDF on Linux. Previously an "Error converting CAD content using CAD2PDF module Add-On." exception could be thrown.
[html] Fixed issues with the HTML2PDF options HTML2PDF.SetLandscape(), HTML2PDF.SetPaperSize() and HTML2PDF.SetPrintBackground(). Previously these could be ignored.
[html] Fixed an issue with handling double quotes around attribute values in HTML2PDF.SetHeader() or HTML2PDF.SetFooter(). Previously an exception with message "An internal error happened between the SDK and the HTML2PDF module. Contact Apryse support for assistance." would be thrown.
Office Fidelity:
[xlsx] Significantly reduced the memory usage of Excel document conversion.
[xlsx] Improved the accuracy of Excel column width calculations.
[xlsx] Fixed the incorrect row height set for some rows containing merged cells.
[docx] Corrected an autofit table size issue for tables containing paragraphs with a non-zero right indentation.
[pptx] Fixed an issue where hidden slides were unexpectedly visible when converting PPTX documents to PDF.
[xls] Fixed an issue where some images placed in the header or footer of XLS documents were not sized correctly.
[office] Added support for template loops and conditionals that span multiple sections.
[office] Fixed a rare crash that occurred when creating an office template.
[xlsx] Addressed an issue where getNextExcelSheetCellCount() would take too much time counting cells in a large sheet.
[xlsx] XLSX conversion now correctly handles single cell print areas.
[xlsx] XLSX conversion correctly retrieves the "protect" status of an Excel cell.
[docx] Resolved an issue where paragraph borders were not visible when page borders were present in DOCX documents.
[docx] Improved the handling of complex combinations of inline and floating shapes and images.
[docx] Fixed an issue resulting in incorrect column widths for some tables in Word.
[xlsx] Now correctly handle invalid cell references passed to the COUNTIFS() Excel function.
[xlsx] Added support for default grid lines in Excel documents.
[xlsx] Fixed issues with incorrectly drawn merged cells on Excel pages with headings and/or titles.
[office] Fixed a bug in where diagonal cell borders could result in an exception being thrown.
[office] Improved accessibility of PDF output when handling Arabic and other complex scripts by including original Unicode in the output PDF.
[xlsx] Fixed a rare crash with Excel documents containing merged cells on the edge of the print area.
[docx] Fixed an issue where the table header row color could be applied to non-header cells.
[docx] Fixed an issue where right- or center-aligned tabs could be laid out incorrectly.
[docx] Improved handling of malformed tables in Word documents (tables with missing cell widths).
[office] Fixed a bug where self-serve web fonts were not chosen when converting certain documents.
[docx] Now correctly generate an empty page at the end of a document with a trailing page break.
[docx] Fixed an issue with displaying an incorrect total number of pages in a section.
[office] Fixed an issue that could result in an incorrect text color in some diagrams.
[xlsx] Avoided processing hidden columns in Excel, significantly reducing the conversion time for some documents.
[docx] Fixed an issue that could incorrectly result in extra blank pages after page breaks in some Word documents.
[xlsx] Fixed an edge case that could result in large amount of empty cells being included in an Excel sheet.
[office] Fixed an issue with incorrect application of letter spacing adjustments in EMF images.
[doc] Fixed an issue with incorrect table row alignment in some DOC documents.
[docx] Improved handling of font size values in malformed Word documents.
[docx] Added support for row-by-row table alignment in Word documents.
[docx] Avoid overlapping floating objects when at least one object is set to not overlap.
[docx] Added support for ListNum field for docx documents. The ListNum field in Word allows you to insert sequential numbers, letters, or legal numbering anywhere in a document.