Browse our Products

Aspose.Slides for Python via .NET 25.5 Release Notes

New Features and Enhancements

KeySummaryCategoryRelated Documentation
SLIDESNET-44567Some animation effects are missing when creating frames from slides for videoEnhancement
SLIDESNET-44445Merge PowerPoint documents using Azure functionsInvestigationhttps://docs.aspose.com/slides/net/slides-on-cloud-platforms/azure/?utm_source=chatgpt.com
SLIDESNET-44892Inserting long HTML pages to presentation slidesEnhancementhttps://docs.aspose.com/slides/python-net/import-presentation/#import-powerpoint-from-html
SLIDESNET-44898Checking if a shape is a cameoFeature
SLIDESNET-44811Implement export to HTML5 in handout modeFeature
SLIDESNET-44881PPTX/PPT to Markdown: HTML-encoded characters should be empty spaceEnhancement

Other Improvements and Changes

KeySummaryCategoryRelated Documentation
SLIDESPYNET-259EMF image is missing when converting PPTX to PDFBug
SLIDESPYNET-273Use Aspose.Slides for Net 25.5 featuresEnhancementhttps://releases.aspose.com/slides/net/release-notes/2025/aspose-slides-for-net-25-5-release-notes/

Public API Changes

Added New Properties: IHtml5Options.slides_layout_options, ISwfOptions.slides_layout_options

The new property, slides_layout_options, has been added to the IHtml5Options interface and implemented in the Html5Options class. This property allows you to control the mode in which slides are placed on the page when exporting a presentation to the HTML5 format.

The following code sample demonstrates how to use the slides_layout_options property:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres:
    slides_layout_options = slides.export.HandoutLayoutingOptions()
    slides_layout_options.handout = slides.export.HandoutType.HANDOUTS_4_HORIZONTAL
    options = slides.export.Html5Options()
    options.slides_layout_options = slides_layout_options
    pres.save("pres.html", slides.export.SaveFormat.HTML5, options)

The following code sample demonstrates how to use this new property instead of the obsolete notes_comments_layouting property:

import aspose.slides as slides

with slides.Presentation("test.pptx") as pres:
    slides_layout_options = slides.export.NotesCommentsLayoutingOptions()
    slides_layout_options.notes_position = slides.export.NotesPositions.BOTTOM_TRUNCATED
    options = slides.export.Html5Options()
    options.output_path = "test_pptx"
    options.slides_layout_options = slides_layout_options
    pres.save("index.html", slides.export.SaveFormat.HTML5, options)

The new property, slides_layout_options, has also been added to the ISwfOptions interface and implemented in the SwfOptions class. This property allows you to control the mode in which slides are placed on the page when exporting a presentation to the SWF format. Please note that this property does not support assigning instances of the HandoutLayoutingOptions type.

The following code sample demonstrates how to use the slides_layout_options property:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres:
    slides_layout_options = slides.export.NotesCommentsLayoutingOptions()
    slides_layout_options.comments_position = slides.export.CommentsPositions.RIGHT
    options = slides.export.SwfOptions()
    options.slides_layout_options = slides_layout_options
    pres.save("pres.swf", slides.export.SaveFormat.SWF, options)

Markdown Export Enhancements

Three new properties have been added to the MarkdownSaveOptions class, providing greater control over the formatting of exported Markdown documents:

  • remove_empty_lines – Removes empty or whitespace-only lines for cleaner output.
  • handle_repeated_spaces – Specifies how repeated space characters are preserved to maintain visual alignment.
  • slide_number_format – Allows users to customize the format of slide number headers in the exported Markdown.

The following code sample demonstrates how to use these properties:

import aspose.slides as slides

with slides.Presentation("demo.pptx") as pres:
    options = slides.export.MarkdownSaveOptions()
    options.remove_empty_lines = True
    options.handle_repeated_spaces = slides.export.HandleRepeatedSpaces.ALTERNATE_SPACES_TO_NBSP
    options.slide_number_format = "## Slide {0} -"
    options.show_slide_number = True
    options.export_type = slides.export.MarkdownExportType.TEXT_ONLY
    options.flavor = slides.export.Flavor.DEFAULT
    pres.save("output.md", slides.export.SaveFormat.MD, options)

Added New Methods: ISlideCollection.insert_from_html

The new methods, insert_from_html, have been added to the ISlideCollection interface and implemented in the SlideCollection class. These methods allow you to control how HTML content is inserted - either starting from a new slide or from a slide at a specified index.

The following code sample demonstrates how to insert HTML content into the presentation slide collection, starting from the empty space on the slide with index equal to 2:

import aspose.slides as slides

with slides.Presentation("presentation.pptx") as pres:
    with open("content.html", "rb") as html_stream:
        pres.slides.insert_from_html(2, html_stream, True)
    pres.save("output.pptx", slides.export.SaveFormat.PPTX)

Added New Property: PictureFrame.is_cameo

The new property, is_cameo, has been added to the PictureFrame class. This property allows you to detect whether a picture frame is a Cameo object - a special shape in PowerPoint linked to the user’s camera feed.

The following code sample demonstrates how to use the is_cameo property:

import aspose.slides as slides

with slides.Presentation("presentation.pptx") as pres:
    shape = pres.slides[0].shapes[0]
    if type(shape) is slides.PictureFrame:
        print("IsCameo:", shape.is_cameo)

Marked as Obsolete Properties: IHtml5Options.notes_comments_layouting, ISwfOptions.notes_comments_layouting

The properties IHtml5Options.notes_comments_layouting, Html5Options.notes_comments_layouting, ISwfOptions.notes_comments_layouting, and SwfOptions.notes_comments_layouting have been marked as obsolete and will be removed after the release of version 25.8.

Marked as Obsolete Interface: INotesCommentsLayoutingOptions

The interface INotesCommentsLayoutingOptions has been marked as obsolete and will be removed after the release of version 25.8.

Removed Obsolete Methods: IPresentation.save

The following obsolete overloads of the save method have been removed from the IPresentation interface and the Presentation class:

  • save(fname, format, response, show_inline)
  • save(fname, format, options, response, show_inline)