Browse our Products

Aspose.Words for .NET 25.8 Release Notes

Major Features

There are 67 improvements and fixes in this regular monthly release. The most notable are:

  • Markdown Export: Added more control over how non-compatible tables are rendered when exporting to HTML.
  • Find and Replace: Added a new option to ignore Office Math objects during search and replace operations.
  • Printing: Introduced a new property to check the number of pages remaining in a print job.
  • Markdown Import: Introduced a new option to specify the character for soft line breaks.
  • Page Extraction: Added new options to provide greater control over the page extraction process.

Full List of Issues Covering all Changes in this Release

Expand to view the full list of issues.
KeySummaryCategory
WORDSNET-28249Consider providing an ability to replace in OfficeMathNew Feature
WORDSNET-28250Consider adding an ability to preserve NUMPAGES fields after using ExtractPages methodNew Feature
WORDSNET-28236Missing glyphs on conversion to PDFNew Feature
WORDSNET-11360Justify Medium paragraph alignment is not preserved in PDFNew Feature
WORDSNET-9766Docx to fixed file format conversion issue with arabic textNew Feature
WORDSNET-28439Add public property providing the number of pages remaining in the current print jobNew Feature
WORDSNET-24716Provide an API to track document printing progressEnhancement
WORDSNET-25542Invisible watermarkBug
WORDSNET-28498Compare result does not match MS Word outputBug
WORDSNET-28387Object reference error upon DOCX to PDF conversionBug
WORDSNET-28480Chinese text is distributed improperly after renderingBug
WORDSNET-28292InvalidOperationException when processing DOCX with XML-mapped StructuredDocumentTagsBug
WORDSNET-28135DOCX merging issueBug
WORDSNET-28481FileCorruptedException is thrown upon loading RTF documentBug
WORDSNET-28430OpenAiModel.Translate() throws an exception with custom URLBug
WORDSNET-28470Table.AutoFit() not working as expectedBug
WORDSNET-28431FirstLineIndent return -28.35 instead of 0 in DOTM styleBug
WORDSNET-28225Soft line break is improperly read from markdown documentBug
WORDSNET-27698Tab character in SDT is rendered as missed character when PreserveFormFields is enabledBug
WORDSNET-28465LINQ Reporting Engine - An issue with building nested tablesBug
WORDSNET-28338LINQ Reporting Engine - An issue with building a pivot table upon a single cellBug
WORDSNET-28420HTML to XLSX conversion errorBug
WORDSNET-28476FileLoadException is thrown upon loading PDFBug
WORDSNET-28311DOCX merging issueBug
WORDSNET-28455InvalidOperationException upon saving document after appending text to tables in a Building BlockBug
WORDSNET-28417DOC to PDF: Extra image appearsBug
WORDSNET-28224Data in nested regions are merged improperlyBug
WORDSNET-28435SimHei font replaced with SimSun and became Regular instead of Bold upon DOCX to PDFBug
WORDSNET-28471Incorrect scaling of a vertical numeric axisBug
WORDSNET-28447X-axis label text moves to the next line when converting DOCX to PDFBug
WORDSNET-28426NullReferenceException upon MailMerge with the html textBug
WORDSNET-28456System.NullReferenceException when processing a document containing shapesBug
WORDSNET-28459PAC to report accessibility compliance errors with link annotationBug
WORDSNET-26362Less items are dispalyed in chart legendBug
WORDSNET-22932Arabic text does not render correctly in output PDFBug
WORDSNET-28399Infinite loop on UpdatePageLayoutBug
WORDSNET-28203NullReferenceException on UpdatePageLayout()Bug
WORDSNET-28425Missed Subtype for header/footer in the PDF/UA-1Bug
WORDSNET-27891Shapes texture and gradient fill is corrupted after work of ApsCanvasTransformApplierBug
WORDSNET-246433D bar chart is overlapped by axis title and legendBug
WORDSNET-22698Justify Low Paragraph Alignment is not Retained during Arabic Word to PDF ConversionBug
WORDSNET-15011Paragraph’s alignment is lost after conversion from Docx to PDFBug
WORDSNET-28233Noto JP fonts embedded in MS Word document are not handled by MS Word properlyBug
WORDSNET-28359ArgumentOutOfRangeException is thrown upon autofitting tableBug
WORDSNET-28316Merging images does not work as expected with Merger.Merge overload that returns Document instanceBug
WORDSNET-11791Arabic text rendering issue with output PDFBug
WORDSNET-28450DOCX to PDF: Loading and filling the document with XML does not render Japanese letters correctlyBug
WORDSNET-28407Issue with symbol rendering after formatting change with tracked changesBug
WORDSNET-28373RevisionTextEffect.Hidden effect is not applied to list itemsBug
WORDSNET-28448Page orientation changed from landscape to portrait upon DOCX to PDF convertionBug
WORDSNET-28446Multiple link tags instead of single link in PDF/UABug
WORDSNET-27631Obfuscated exception is thrown while loading password protected PDF.Bug
WORDSNET-22986Justification of Arabic text is incorrectBug
WORDSNET-28289XML to MD: HTML Tables tags with Markdown ContentBug
WORDSNET-11830Docx to Pdf conversion issue with text justificationBug
WORDSNET-28434DOCX to EPUB: System.IndexOutOfRangeExceptionBug
WORDSNET-28293Table is imported from MHTML with wrong background colorBug
WORDSNET-27741Add support for the “mso-list-name” CSS propertyBug
WORDSNET-28276Import of MsoHtml lists differs from MS Word’s resultBug
WORDSNET-28238Borders are imported improperly from HTMLBug
WORDSNET-28422Image lost when converting Doc to DocBug
WORDSNET-28428A bug in usage of exception cache in WebRequestHelper.OpenStreamFromUri()Bug
WORDSNET-28429List numbers are duplicated when converting HTML to DOCXBug
WORDSNET-28376Image is lost after importing HTMLBug
WORDSNET-27831Strange PageCount behaviorBug
WORDSNET-28205Legend is rendered improperlyBug
WORDSNET-28438DOCX to EPUB: Image containing math formula renders incorrectlyBug

Public API and Backward Incompatible Changes

This section lists public API changes that were introduced in Aspose.Words 25.8. It includes not only new and obsoleted public methods, but also a description of any changes in the behavior behind the scenes in Aspose.Words which may affect existing code. Any behavior introduced that could be seen as regression and modifies the existing behavior is especially important and is documented here.

Added new public enumeration MarkdownExportAsHtml.NonCompatibleTables

Related issue: WORDSNET-28289

A new public flag has been added into Aspose.Words.Saving.MarkdownExportAsHtml enumeration:

/// <summary>
/// Export tables that cannot be correctly represented in pure Markdown as raw HTML.
/// </summary>
/// <remarks>
/// <para> When this option is enabled, Aspose.Words will only export tables that have merged cells
/// or nested tables as raw HTML. And all other tables will be exported in Markdown format.
/// Also note, this option will not preserve all formatting of the table, but only preserves
/// corresponding spans of the cells.</para>
/// <para>If related <see cref="Tables"/> flag is set, then this flag will be ignored.</para>
/// </remarks>
NonCompatibleTables = 0x0002

This use case describes how to export only those tables as HTML that cannot be accurately represented using plain Markdown:

Added new public option FindReplaceOptions.IgnoreOfficeMath

Related issue: WORDSNET-28249

A new public option has been added into Aspose.Words.Replacing.FindReplaceOptions class:

/// <summary>
/// Gets or sets a boolean value indicating either to ignore text inside OfficeMath/>.
/// The default value is <c>true</c>.
/// </summary>
public bool IgnoreOfficeMath {get; set;}

This use case explains how to replace text in OfficeMath:

Added new public property AsposeWordsPrintDocument.PagesRemaining

Related issue: WORDSNET-28439

A new public property PagesRemaining providing the number of pages remaining in the current print job was added to AsposeWordsPrintDocument class:

/// <summary>
/// Gets the number of pages remaining in the currently active print job.
/// </summary>
/// <remarks>
/// This value is updated automatically as pages are printed, reflecting the current print job's progress.
/// Outside of print time and in case of print job errors or interruptions, the value may not reflect the
/// actual number of pages pending.
/// </remarks>
public int PagesRemaining { get; }

This makes it much easier to track print jobs.

Sample Print Tracker Implementation:

This use case explains how to printing a word document to PDF with event tracking using Aspose.Words:

New public MarkdownLoadOptions.SoftLineBreakCharacter option has been introduced

Related issue: WORDSNET-28225

A new public option has been added into Aspose.Words.Loading.MarkdownLoadOptions class:

/// <summary>
/// Gets or sets a character value representing `soft line break`.
/// The default value is <c>SPACE (U+0020)</c>.
/// </summary>
/// <remarks>
/// Note, setting this option to <see cref="ControlChar.LineBreakChar"/> allows you
/// to load soft line breaks as hard line breaks.
/// </remarks>
public char SoftLineBreakCharacter {get; set;}

This use case explains how to change the default soft line break character SPACE to some another character \v:

New public PageExtractOptions has been introduced

Related issue: WORDSNET-28250

A new public options class PageExtractOptions has been introduced:

/// <summary>
/// Allows to specify options for document page extracting.
/// </summary>
public class PageExtractOptions
{
  /// <summary>
  /// Specifies whether the start page number in the resulting document shall be updated.
  /// Default value is <c>true</c>.
  /// </summary>
  public bool UpdatePageStartingNumber { get; set; }

  /// <summary>
  /// Specifies whether NUMPAGES fields in the resulting document will be replaced with their actual resulting values.
  /// Default value is <c>true</c>.
  /// </summary>
  public bool UnlinkPagesNumberFields { get; set; }
}

This use case explains how to change the code behavior when extracting pages: