Browse our Products
Aspose.Words for Python via .NET 26.2 Release Notes
Major Features
There are 55 improvements and fixes in this regular monthly release. The most notable are:
- Charts: Added the ability to set the orientation and rotation for both chart titles and axis titles.
- Mathematical Equations: Improved the rendering of EQ-matrix (MathML) elements for higher visual fidelity.
- Table Layout: Implemented the updated MS Word logic regarding the merging (or separation) of adjacent tables.
Full List of Issues Covering all Changes in this Release
Expand to view the full list of issues.
- Provide a property to get/set secondary axis title rotation of chart
- Imitate the new MS Word behavior when (not) merging adjacent tables with different tblLayout value
- HTML to Pdf conversion issue with the width of table’s cell
- Consider downgrading Microsoft.Extensions.DependencyInjection dependency to 8.x version in .NET8 version of Aspose.Words
- Document table layout is wrong after rendering
- Table layout is changed after rendering
- Bar chart is rendered improperly
- MS Word detects 2 tables, while Aspose.Words detects only 1
- DOCX to PDF: Incorrect table layout without UpdateTableLayout()
- Part of text in table is truncated at right after rendering HTML document
- Table width in landscape section header is incorrect after rendering
- DOCX to PDF: Table column width not re-calculated
- Incorrect document layout upon rendering
- Incorrect table width on mhtml to PDF conversion
- Layout of the document is wrong
- Incorrect line break in the header of a saved PDF
- Content position is changed after conversion from HTML to PDF
- Cell’s text is rendered behind the image in output PDF
- Shapes are overlapped after conversion from Doc to PNG
- Line is incorrectly wrapped and justified when WordWrap is disabled
- Track changes are lost in dropdown content controls mapped to Custom XML when saving DOCX
- AW incorrectly calculates a space width if the space is adjacent to a tab
- FileCorruptedException is thrown upon loading DOCX document
- Text is mixed up upon PDF to DOCX import
- Umlauts are lost after converting PDF to DOCX
- Header content representation changed after conversion
- NullReferenceException is thrown upon comparing documents
- Misleading title of the “Open a Document Read-Only” article
- Aspose.Words.LowCode.Merger.Merge: Object reference not set to an instance of an object
- Numeral format is changed after rendering document
- Table border is shown after rendering
- Hyphenation does not work for Serbian
- Line ends with ‘opposite’ trailing spaces wraps incorrectly
- Setting the cursor before SDT raises an exception
- MathML is incorrectly imported from HTML
- Corrupted document when exporting to Doc a cloned document in a multi-threaded mode
- ArgumentException is thrown upon rendering document
- EQ field is rendered improperly
- Text “General” appears insted values after converting to PDF
- EQ field is rendered improperly
- The scale of cached XObject is not taken into account for PdfImage
- Document is truncated upon rendering
- Part of content moved to the next page after rendering
- Incorrect llayout when render to DOCX
- Artifacts upon rendering shape
- Deffect in Windows 11 after rendering
- FontSubstitution adds a different font than expected
- Incorrect table size after mergin the documents
- Fill pattern shifted for DML shapes in comparison with MS Word
- The pattern fill is squeezed for VML shapes
- ArgumentException is thrown upon inserting mathml
- EQ field is rendered improperly, enclosure character is not rendered
- EQ field is rendered improperly, overlayed content position is slightly incorrect
- EQ field is not rendered as expected
- EQ field is rendered incorrectly
Public API and Backward Incompatible Changes
This section lists public API changes that were introduced in Aspose.Words for Python via .NET 26.2. 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 for Python via .NET 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 ability to set orientation and rotation of chart title and axis title
The properties Orientation and Rotation have been added to the ChartTitle and ChartAxisTitle classes:
This use case explains how to set orientation and rotation of chart title and axis title:
doc = aw.Document()
builder = aw.DocumentBuilder(doc=doc)
chart_shape = builder.insert_chart(chart_type=aw.drawing.charts.ChartType.COLUMN, width=400, height=300)
chart = chart_shape.chart
chart.title.text = 'Sample Chart'
chart.title.orientation = aw.drawing.ShapeTextOrientation.HORIZONTAL
chart.title.rotation = 90
# Before setting title properties, make sure that this title will be displayed.
chart.axis_x.title.show = True
chart.axis_x.title.text = 'X Axis'
chart.axis_x.title.orientation = aw.drawing.ShapeTextOrientation.HORIZONTAL
chart.axis_x.title.rotation = -90
doc.save(file_name=ARTIFACTS_DIR + 'Charts.TitleOrientation.docx')Consecutive tables with different tblLayout values are no longer merged
Per WORSNET-28521, Aspose.Words behavior was changed so that consecutive tables with different tblLayout property values are no longer merged into a single table.
In MS Word, there is some logic that merges consecutive tables with similar properties into a single table. This might significantly affect table layout. For a long time, MS Word had been merging consecutive tables with different tblLayout values into a single table. The behavior was changed fairly recently at some time around March or April 2025. Since then, MS Word does not merge consecutive tables with different tblLayout values. There were several customer requests to imitate the new behavior. AW behavior now matches the current MS Word behavior in this respect.
The change actually breaks the expected layout for a some of older customer requests, specifically WORDSNET-13434, WORDSNET-20814 and some others. But that should not be a problem since the same change had already happened with MS Word layout for documents in those requests.
Added new public option LayoutOptions.enable_text_shaping
A new public option enable_text_shaping has been added in LayoutOptions class.
This use case shows how to use enable_text_shaping:
doc = aw.Document(file_name=MY_DIR + "TestMetricsKerning.docx")
doc.layout_options.enable_text_shaping = True
doc.save( file_name=ARTIFACTS_DIR + 'out_HarfBuzz.pdf')