Browse our Products
Aspose.Words for Python via .NET 24.10 Release Notes
Major Features
There are 75 improvements and fixes in this regular monthly release. The most notable are:
- Enhanced ActiveX Control Support: Introduced the ability to create CommandButton ActiveX controls.
- Shape Visibility Control: Added a new public property Shape.Hidden to control the visibility of shapes.
- Group Shape Insertion: Added ability to group individual shapes, group shapes together, and directly group both shapes and group shapes.
- Markdown Export Options: Incorporated an option to export tables as HTML when saving documents to Markdown format.
- Pie and Doughnut Chart Formatting: Added public properties to format Pie and Doughnut charts.
- Big5 Encoding Support: Improved handling of Big5 encoding for TrueType cmap tables.
- Outdated Taiwanese Font Handling: Enhanced support for outdated Taiwanese fonts.
Full List of Issues Covering all Changes in this Release
Expand to view the full list of issues.
- Add overload of InsertGroupShape to group GroupShapes
- Make ShapeBase.Hidden property public
- Add feature to create CommandButton ActiveX
- Manipulation of Doughnut Chart Style
- Aspose.Words support save as “Web page, Filtered” format
- Add feature to get ChartType of chart
- Support for PCL5
- Image wrapping problem and some content moves to previous page in PDF
- Chart is rendered improperly
- Comparison shows wrong SDT tag
- Corrupted DOCX document is loaded as TXT if load from stream
- Exception is thrown upon comparing document
- InvalidOperationException is thrown upon comparing document
- NC sync error occurs when comparing docx documents
- Comparison throws NC sync failed exception
- Document.Compare throws System.InvalidOperationException
- Compare throws System.InvalidOperationException: NC sync failed
- Aspose.Words 23.5 Throws “ArgumentOutOfRangeException” when comparing Word documents
- Formula fields are updated improperly
- ArithmeticException is thrown upon rendering document to PDF
- XPS Viewer shows broken signature warning in XPS signed by Aspose.Words
- Compare lists content controls as modified
- Inconsistent XmlMapping.IsMapped property behavior with CustomXmlPart null value in SDTs
- Incorrect wrapping of the justified line
- DOCX to PDF: Values from Chart axes not rendered
- Pie charts are rendered with less radius
- NullReferenceException while reading HTML
- “RemoveContainingFields” cleanup option removes Hyperlink field in Mail Merge
- Chinese file names inside the epub file garbled after conversion
- Aspose.Words allows adding custom document property with name that starts with digits that produced an invalid XML
- Ranged SDT ids are duplicated in ‘foreach’
- Aspose.Words produces a corrupted document after removing frames
- Pdf2Word hangs upon loading document
- Exported OLE objects from RTF cannot be opened within respective tool
- Consider providing an option to export tables as HTML when saving document to Markdown
- Aspose.Words loads PDF document very slow
- Redundant footer is added in the extracted page
- Aspose.Words hangs upon loading PDF document
- Footer is changed after open/save document.
- Linked text box chain is not loaded into the model
- Webpage to MHTML conversion produces empty document
- Table overlaps list item text on DOC to PDF conversion
- Can’t add a paragraph to even pages
- ArgumentException is thrown upon rendering document
- Image Color Conversion Issue When Saving DOCX as PDF
- Image color is changed after rendering in .NET Standard
- Line is lost after rendering document as HtmlFixed
- DOCX to PDF: Chinese font not applied in output PDF file
- List items positions are changed after PDF to DOCX conversion
- ArgumentException is thrown upon rendering document
- Gradient is lost after rendering document to image
- DOCX to PDF: Fonts are substituted even though they are available in the fonts folder or installed on the system
- LINQ Reporting Engine template syntax is not processed in textbox SDT
- Chart is rendered improperly
- Chart with logarithmic axis scaling is rendered improperly
- Hyperlink is changed after converting DOCX to DOC
- MailMergeSettings.Query does not work if path to data source contains ‘#’
- ArgumentNullException is thrown upon using Document.ExtractPages with hyphenation
- Characters getting cut off when converting DOCX to PDF
- Columns width issue on saving to XLSX
- XmlException is thrown upon loading ODT document
- PDF produced by Aspose.Words shows warnings upon validation PDF/UA complicance
- Bad quality of ePub to DOCX conversion
- Resultant file is corrupt when saving it to the same stream
- DATE field with french formatting change value to english formatting (DOCX to PDF)
- Platform issue while running on modern os versions
- DOCX to PDF rendering issue with Thai char
- Position of page numbers in TOC are not lined in HTML
- Cell level SDT is not exported to PDF as editable checkbox
- Formatting lost after loading from HTML
- DOCX to MD: Code blocks not converted correctly
- Document corrupted exception
- Table Indent property changed after converted from Word to HTML to word
- MailMerge number format in fr_CH locale
- Document.UpdateFields does not update HYPERLINK field, leaving its result as “Error! Hyperlink reference not valid”
Public API and Backward Incompatible Changes
This section lists public API changes that were introduced in Aspose.Words for Python via .NET 24.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 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 create CommandButton ActiveX control
Added a new insert_forms_2_ole_control public method to Aspose.Words.DocumentBuilder class. Also added a new CommandButtonControl public class to Aspose.Words.Drawing.Ole namespace.
This use case explains how to insert CommandButton ActiveX control:
builder = aw.DocumentBuilder()
button1 = aw.drawing.ole.CommandButtonControl()
shape = builder.insert_forms_2_ole_control(button1)
self.assertEqual(aw.drawing.ole.Forms2OleControlType.COMMAND_BUTTON, shape.ole_format.ole_control.as_forms2_ole_control().type)
Added new public property Shape.Hidden
A new public property hidden has been added to ShapeBase class:
This use case explains how to use hidden property:
doc = aw.Document(file_name=MY_DIR + 'Shadow color.docx')
shape = doc.get_child(aw.NodeType.SHAPE, 0, True).as_shape()
if not shape.hidden:
shape.hidden = True
doc.save(file_name=ARTIFACTS_DIR + 'Shape.Hidden.docx')
Added option that allows to export tables as HTML when saving document to Markdown
Added a new export_as_html public option to Aspose.Words.Saving.MarkdownSaveOptions class. And also a new MarkdownExportAsHtml public enumeration to Aspose.Words.Saving namespace.
This use case explains how to export table as raw HTML when saving to Markdown:
doc = aw.Document()
builder = aw.DocumentBuilder(doc=doc)
builder.writeln('Sample table:')
# Create table.
builder.insert_cell()
builder.paragraph_format.alignment = aw.ParagraphAlignment.RIGHT
builder.write('Cell1')
builder.insert_cell()
builder.paragraph_format.alignment = aw.ParagraphAlignment.CENTER
builder.write('Cell2')
save_options = aw.saving.MarkdownSaveOptions()
save_options.export_as_html = aw.saving.MarkdownExportAsHtml.TABLES
doc.save(file_name=ARTIFACTS_DIR + 'MarkdownSaveOptions.ExportTableAsHtml.md', save_options=save_options)
Added public properties to format Pie and Doughnut charts
The following public properties have been added to the ChartSeriesGroup class for formatting Pie and Doughnut charts:
- first_slice_angle
- doughnut_hole_size
- second_section_size
This use case explains how to create and format Doughnut chart:
doc = aw.Document()
builder = aw.DocumentBuilder(doc=doc)
shape = builder.insert_chart(chart_type=aw.drawing.charts.ChartType.DOUGHNUT, width=400, height=400)
chart = shape.chart
# Delete the default generated series.
chart.series.clear()
categories = ['Category 1', 'Category 2', 'Category 3']
chart.series.add(series_name='Series 1', categories=categories, values=[4, 2, 5])
# Format the Doughnut chart.
series_group = chart.series_groups[0]
series_group.doughnut_hole_size = 10
series_group.first_slice_angle = 270
doc.save(file_name=ARTIFACTS_DIR + 'Charts.DoughnutChart.docx')
This use case explains how to create and format Pie of Pie chart:
doc = aw.Document()
builder = aw.DocumentBuilder(doc=doc)
shape = builder.insert_chart(chart_type=aw.drawing.charts.ChartType.PIE_OF_PIE, width=440, height=300)
chart = shape.chart
# Delete the default generated series.
chart.series.clear()
categories = ['Category 1', 'Category 2', 'Category 3', 'Category 4']
chart.series.add(series_name='Series 1', categories=categories, values=[11, 8, 4, 3])
# Format the Pie of Pie chart.
series_group = chart.series_groups[0]
series_group.gap_width = 10
series_group.second_section_size = 77
doc.save(file_name=ARTIFACTS_DIR + 'Charts.PieOfPieChart.docx')
New public methods DocumentBuilder.InsertGroupShape has been introduced
A new insert_group_shape public methods in DocumentBuilder class has been implemented. It is now possible to group individual shapes, group shapes together, and directly group both shapes and group shapes.
This use case explains how to work with insert_group_shape methods:
doc = aw.Document()
builder = aw.DocumentBuilder(doc=doc)
shape1 = builder.insert_shape(shape_type=aw.drawing.ShapeType.RECTANGLE, width=200, height=250)
shape1.left = 20
shape1.top = 20
shape1.stroke.color = aspose.pydrawing.Color.red
shape2 = builder.insert_shape(shape_type=aw.drawing.ShapeType.ELLIPSE, width=150, height=200)
shape2.left = 40
shape2.top = 50
shape2.stroke.color = aspose.pydrawing.Color.green
# Combine shapes into a GroupShape node which is inserted into the specified position.
group_shape1 = builder.insert_group_shape(shapes=[shape1, shape2])
# Combine Shape and GroupShape nodes.
shape3 = shape1.clone(True).as_shape()
group_shape2 = builder.insert_group_shape(shapes=[group_shape1, shape3])
doc.save(file_name=ARTIFACTS_DIR + 'Shape.CombineGroupShape.docx')