Browse our Products

Aspose.Words for Java 26.10 Release Notes

Major Features

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

  • AI Engine Integration: Integrated Aspose.LLM into Aspose.Words to provide AI-powered document processing backed by an on-premise inference engine that runs entirely inside the current process, ensuring document content never leaves the machine.
  • Layout Engine: Improved floating table positioning by imitating MS Word behavior when balancing floating tables against footnotes.
  • Charts: Added the ability to set fill and line formatting for the chart plot area.
  • Charts: Added the ability to determine whether a data point is total in waterfall charts.
  • MathML Rendering: Implemented color remapping for MathML background rendering according to compatibility settings.
  • PDF Export: Implemented structure destination (/SD) generation for document outline entries to ensure full PDF/UA-2 compliance.
  • Rendering: Implemented rendering support for FormCheckBox fields located within OfficeMath formulas.

Full List of Issues Covering all Changes in this Release

Expand to view the full list of issues, reported by Java Users.
KeySummaryCategory
WORDSJAVA-3433Add HarfBuzz support for aarch64 LinuxNew Feature
WORDSJAVA-3313Korean word breaks not being respected. NanumBarunGothic font (ARM Linux)Bug
WORDSJAVA-3269Issue with HarfBuzz plugin on macOSBug
WORDSJAVA-3052HarfBuzz plugin incompatibility with ARM processors.Bug
Expand to view the full list of issues, reported by .NET Users.
KeySummaryCategory
WORDSNET-29565Consider exporting outline entries as structure destinations in tagged PDFNew Feature
WORDSNET-29516Expose chart plot area fill optionsNew Feature
WORDSNET-29505MsoHtml import: support HtmlBlock elements (div/body/blockquote borders and margins)New Feature
WORDSNET-29466Expose a getter that tells whether a waterfall chart column is a totalNew Feature
WORDSNET-29376Consider adding an ability to specify ODF version in save optionsNew Feature
WORDSNET-29147Integrate Aspose.LLM into Aspose.WordsNew Feature
WORDSNET-27555Add possibility to summarize text using LLaMANew Feature
WORDSNET-29367Floating table position is incorrect after renderingEnhancement
WORDSNET-29282CheckBox form fields inside OfficeMath are not renderedEnhancement
WORDSNET-24885Support MSO properties during import shapes.Enhancement
WORDSNET-29267Content is moved to the next pages after renderingBug
WORDSNET-29126Floating tale overlaps footnotes after renderingBug
WORDSNET-28513Content is moved to the next page and overlaps footnotes after renderingBug
WORDSNET-28229Word table were moved to the next page after renderingBug
WORDSNET-27967Table is moved to the next page after rendering.Bug
WORDSNET-27518Table is moved to the next page and overlaps content.Bug
WORDSNET-26781Floating table overlaps footnotes after renderingBug
WORDSNET-26452Footnotes are rendered on a different pageBug
WORDSNET-26092Table is moved to the next page.Bug
WORDSNET-21843DOCX to PDF - Different footnotes position in PDF formatBug
WORDSNET-21577Table and Footnote overlap after DOCX to PDF conversionBug
WORDSNET-21410Text is overlapped after DOCX to HtmlFixed conversionBug
WORDSNET-21085Table is overlapped the text and pushes the text to next pages in output PDFBug
WORDSNET-19486DOCX with footnotes conversion failBug
WORDSNET-18568DOCX to PDF conversion issue with content positionBug
WORDSNET-17885Request to move footnote tags close to footnote link and not at the end of the pageBug
WORDSNET-15174Footnotes overlaps the page text in DOCX to PDF conversionBug
WORDSNET-14150Table’s rows are overlapped the footnotes in output PdfBug
WORDSNET-11176A Table overlaps on footnotes on the previous page in PDFBug
WORDSNET-10344A multi-page Table overlaps Footnotes in PDFBug
WORDSNET-18688Improve para Space Before calculation for lines.Bug
WORDSNET-29662Fix failed ApiExamples tests on LinuxBug
WORDSNET-29638Keyboard shortcuts are corrupted on load/saveBug
WORDSNET-29637Exception is thrown while converting DOCX with HtmlBlocks and inline SDT to HTML.Bug
WORDSNET-29635NullReferenceException is thrown upon rendering document.Bug
WORDSNET-29631DOCX to TIFF/SVG: Output file is not rendered correctlyBug
WORDSNET-29630Add support for the “supportInlineShapes” feature when loading MsoHtmlBug
WORDSNET-29627ExtractPages adds additonal spacing in resultant documentBug
WORDSNET-29626Built-in header/footer styles are not created when loading MsoHtml with custom headers/footersBug
WORDSNET-29621Improve support for conditional comments loaded from MsoHtmlBug
WORDSNET-29620TOC level 1 text is rendered with an outline effect instead of solid formatting in PDFBug
WORDSNET-29609ExtractPages does not split pages correctly due fixed spacingBug
WORDSNET-29608ExtractPages does not split pages correctlyBug
WORDSNET-29592NullReferenceException is thrown upon rendering document with ShowInBalloons.FormatAndDelete.Bug
WORDSNET-29582ExtractPages changes paragraph style to Normal when paragraph spans two pagesBug
WORDSNET-29580Line numbering is changed after extracting pages.Bug
WORDSNET-29578MoveTo and MoveFrom revisions behaves improperly with numbered paragraphs.Bug
WORDSNET-29577Document.Save to HTML throws IndexOutOfRangeExceptionBug
WORDSNET-29558Aspose.Words for .NET renders identical Arial glyphs at different pixel positions on Windows and LinuxBug
WORDSNET-29553EMF metafiles are rendered improperly.Bug
WORDSNET-29546AW hangs on Linux upon rendering.Bug
WORDSNET-29545NullReferenceException is thrown upon rendering documentBug
WORDSNET-29544NullReferenceException is thrown upon rendering document with ShowInBalloons.FormatAndDelete.Bug
WORDSNET-29543NullReferenceException is thrown upon document renderint to PDFBug
WORDSNET-29541MathML text highlights do not match the ordinary text highlight color schemeBug
WORDSNET-29537FileCorruptedException is thrown upon loading document.Bug
WORDSNET-29536FileCorruptedException is thrown upon loading DOC document.Bug
WORDSNET-29535FileCorruptedException is thrown upon loading brocken documentBug
WORDSNET-29530Long hyperlinks are wrapped improperly when hyphenation is used.Bug
WORDSNET-29528Text highlight colors do not match MS Word after rendering.Bug
WORDSNET-29525Table layout is broken after converting ODT documentBug
WORDSNET-29522EndOfStreamException on loading documentBug
WORDSNET-29521IOException occurs on loading documentBug
WORDSNET-29519NullReferenceException is thrown upon rendering document.Bug
WORDSNET-29495Content pagination is incorrect after rendering.Bug
WORDSNET-29489NullReferenceException is thrown upon building document layout.Bug
WORDSNET-29398ODT formatting is changed after processing using Aspose.Words.Bug
WORDSNET-29393Line chart marker is not rendered in the chart’s legend.Bug
WORDSNET-29389Content lost after conversion without a warningBug
WORDSNET-29386Rendering of MiddlineHorizontalEllipsis in Math.Bug
WORDSNET-29377ZIP archive is wrongly detected as PDF by FileFormatUtilBug
WORDSNET-29374Digital signature is not shown by XPS viewer when signing OpenXpsBug
WORDSNET-29290Fix a bug with footnote’s reference mark formatting. Now reference mark has blue color (anchor style is applied, but MS Word doesn’t apply it).Bug
WORDSNET-29087SDT is wrapped improperly after exporting to HTML.Bug
WORDSNET-29032OfficeMath is wrapped incorrectly after rendering.Bug
WORDSNET-27459Multi-line TOC item is represented as multiple links in the document structure.Bug
WORDSNET-24296Floating table overlaps footnote.Bug
WORDSNET-24221Paragraph with Before spacing is positioned wrongBug
WORDSNET-22582Footnote text is overlapped the table after DOCX to PDF ConversionBug
WORDSNET-22391Table is overlapped over Footnote after DOCX to PDF conversionBug
WORDSNET-21608Text and Footnotes are overlapped after DOCX to PDF conversionBug
WORDSNET-29594PCL send that to a printer has a bad font warningBug
WORDSNET-29581Different image cropping after replacing image in a shapeBug
WORDSNET-29562Table layout is changed after rendering document after removing SDTs.Bug
WORDSNET-29629Aspose.Words detects difference in file where MS Word does not.Bug
WORDSNET-22519Title Heading Paragraph layout problem when converting DOCX to PDFBug
WORDSNET-18439DOCX to PDF conversion issue with table rendering on pagesBug
WORDSNET-29488PDF to DOCX: Incorrect page numberBug
WORDSNET-28179PDF to DOCX conversion issueBug
WORDSNET-24807Footer is imported improperly from PDF.Bug

Public API and Backward Incompatible Changes

This section lists public API changes that were introduced in Aspose.Words 26.10. 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.

Integrated Aspose.LLM into Aspose.Words

Related issue: WORDSNET-29147

A new public class has been added into Aspose.Words.AI namespace:

/// <summary>
/// Provides AI-powered document processing backed by Aspose.LLM - an on-premise LLM inference engine
/// that runs entirely inside the current process, so document content never leaves the machine.
/// </summary>
/// <remarks>
/// Unlike <see cref="OpenAiModel"/> / <see cref="GoogleAiModel"/> / the Anthropic models, this class never
/// performs an HTTP request. Aspose.LLM is not a dependency of Aspose.Words: install the Aspose.LLM package
/// (version 26.6.0 or higher) to use this class, so that Aspose.LLM.dll is placed next to Aspose.Words.dll.
/// The native runtime and the model weights are downloaded by Aspose.LLM on the first request.
/// </remarks>
public sealed class AsposeLlmModel : AiModel, IDisposable

/// <summary>
/// Initializes a new instance of the <see cref="AsposeLlmModel"/> class for a specified Aspose.LLM preset.
/// </summary>
/// <param name="presetName">
/// The name of the Aspose.LLM preset class that selects the local model family and its runtime,
/// for example "Qwen25Preset". Nothing is loaded or downloaded when this constructor runs.
/// </param>
public AsposeLlmModel(string presetName)

/// <summary>
/// Generates a summary of the specified document, with options to adjust the length of the summary.
/// </summary>
public override Document Summarize(Document sourceDocument, SummarizeOptions options = null)

/// <summary>
/// Generates a summary for an array of documents, with options to adjust the length of the summary.
/// </summary>
public override Document Summarize(Document[] sourceDocuments, SummarizeOptions options = null)

/// <summary>
/// Translates the provided document into the specified target language.
/// </summary>
public override Document Translate(Document sourceDocument, Language targetLanguage)

/// <summary>
/// Not used: <see cref="AsposeLlmModel"/> runs inference in-process against a local model, so there
/// is no remote endpoint to address. Present only to satisfy the <see cref="AiModel"/> contract.
/// </summary>
public override string Url { get; set; }

/// <summary>
/// Releases the underlying Aspose.LLM model and its native resources.
/// </summary>
public void Dispose()

CheckGrammar, already declared on the base AiModel class, is not overridden and works with AsposeLlmModel unchanged.

This use case explains how to summarize a document with a local model:

This use case explains how to translate a document with a local model:

Added ability to set fill and line formatting for chart plot area

Related issue: WORDSNET-29516

The ChartPlotArea class has been implemented, and a PlotArea property of this type has been added to the Chart class:

/// <summary>
/// Provides access to the plot area properties of a chart.
/// <para>To learn more, visit the <a href="https://docs.aspose.com/words/net/working-with-charts/">Working with Charts
/// </a> documentation article.</para>
/// </summary>
public class ChartPlotArea
{
    /// <summary>
    /// Provides access to fill and line formatting of the plot area.
    /// </summary>
    public ChartFormat Format { get; }
}

public class Chart
{
    ...
    /// <summary>
    /// Provides access to the plot area properties.
    /// </summary>
    public ChartPlotArea PlotArea { get; }
}

This use case explains how to set fill and line formatting for chart plot area:

Added ability to determine whether data point is total in waterfall chart

Related issue: WORDSNET-29466

The IsTotal method has been added to the ChartSeries class:

public class ChartSeries
{
    ...
    /// <summary>
    /// Determines whether the data point at the specified index is a total.
    /// Applies only to Waterfall charts.
    /// </summary>
    /// <param name="index">The zero-based index of the data point.</param>
    /// <returns><b>true</b> if the data point is a total; otherwise, <b>false</b>.</returns>
    public bool IsTotal(int index);
}

The IsTotal property has been added to the ChartDataPoint class:

public class ChartDataPoint
{
    ...
    /// <summary>
    /// Gets a flag indicating whether the data point is a total. Applies only to Waterfall charts.
    /// </summary>
    /// <remarks>
    /// In a waterfall chart, total columns represent intermediate or final totals.
    /// If this property returns <b>true</b>, the data point is such a total column.
    /// </remarks>
    public bool IsTotal { get; }
}

This use case explains how to get data point type in Waterfall chart:

Handling of spacing before paragraph in layout is aligned to the current MS Word behavior

When working on WORDSNET-29495 it turned out that Aspose.Words layout no longer matches MS Word when computing spacing before paragraph for lines starting with an explicit page or column break. Apparently, MS Word logic had been changed for such lines at some point.

Aspose.Words behavior was changed to match the current MS Word behavior.