Browse our Products

Aspose.Slides for .NET 25.12 Release Notes

New Features and Improvements

KeySummaryCategoryRelated Documentation
SLIDESNET-45203Opening and saving a PPT file throws a NullReferenceExceptionBug
SLIDESNET-45208Update Aspose.Slides.NET6.CrossPlatform.targets to support TargetFramework=net10.0Enhancement
SLIDESNET-45219Support for .NET 10Feature
SLIDESNET-44457Aspose.Slides.NET6.CrossPlatform and Aspose.Drawing.CommonInvestigation
SLIDESNET-45213Converting ODP to HTML produces an empty documentBug
SLIDESNET-45078Implement Aspose.Slides PluginsFeature
SLIDESNET-44993Image is slightly shifted when converting a slide to an imageEnhancementhttps://docs.aspose.com/slides/net/convert-slide/
SLIDESNET-45163PPTX to PDF: Incorrect pie chart color in outputBug
SLIDESNET-45199Saving presentations with HtmlOptions.PicturesCompression produces unexpected resultsBug
SLIDESNET-43330Combo chart displays differently when converting PPTX to PDFBug
SLIDESNET-43331Combo chart missing when converting PPTX to PDFBug
SLIDESNET-45200GetPresentationInfo method is unable to determine the load formatBug
SLIDESNET-43403Negative bars are green instead of red when getting slide thumbnailBug
SLIDESNET-43402Blue lines on chart are too short when getting slide thumbnailBug
SLIDESNET-43401Part of chart data label is missing when getting slide thumbnailBug
SLIDESNET-43382Data label format is not applied when presentation is saved as PDFBug
SLIDESNET-43505Doughnut chart data labels are missing when label color is changedBug
SLIDESNET-43630Images are scaled down after exporting slides to HTML with notesBug
SLIDESNET-43629Background image is scaled down after exporting to HTML with notesBug
SLIDESNET-43528Color of chart data labels is wrong after editing chart dataBug
SLIDESNET-45176Managing Guides on masters and slide layoutsFeature
SLIDESNET-44674Images are missing when converting Ppt to PdfBughttps://docs.aspose.com/slides/net/convert-powerpoint-to-pdf/
SLIDESNET-45198PPTX to PPT/PPTX: Taskpanes.xml.rels is missingBughttps://docs.aspose.com/slides/net/convert-powerpoint/

Public API Changes

Added New Property: IBasePortionFormat.SpellCheck

The new property, SpellCheck, has been added to the IBasePortionFormat interface and implemented in the corresponding text formatting classes. This enhancement allows developers to enable or disable spell checking for individual text portions within a presentation.

Usage examples

The following code sample demonstrates how to use this property:

using (var pres = new Presentation("input.pptx"))
{
    // Access the first portion of text inside the first shape on the first slide
    var portion = ((AutoShape)pres.Slides[0].Shapes[0]).TextFrame.Paragraphs[0].Portions[0];

    // Enable spell checking for this text portion
    portion.PortionFormat.SpellCheck = true;

    // Save the modified presentation
    pres.Save("output-with-spellcheck.pptx", SaveFormat.Pptx);
}

Added New Property: DrawingGuides

The new DrawingGuides property has been added to the following interfaces and classes:

  • IMasterSlide
  • IMasterNotesSlide
  • IMasterHandoutSlide
  • ILayoutSlide
  • MasterSlide
  • MasterNotesSlide
  • MasterHandoutSlide
  • LayoutSlide

This property returns a collection of adjustable drawing guides for the slide.

Usage examples

The following code snippet shows how to add the new vertical drawing guide to the first master slide:

using (var pres = new Presentation())
{
    var slideSize = pres.SlideSize.Size;
    
    IDrawingGuidesCollection guides = pres.Masters[0].DrawingGuides;
    // Adding the new vertical drawing guide to the right of the slide center
    guides.Add(Orientation.Vertical, slideSize.Width / 2 + 20f);
    
    pres.Save("MasterSlideDrawingGuides_out.pptx", SaveFormat.Pptx);
}

This code snippet demonstrates how to print the drawing guides of the first master slide:

using (var pres = new Presentation(path + "MasterSlideDrawingGuides_out.pptx"))
{
    var guides = pres.Masters[0].DrawingGuides;
    Console.WriteLine(
        string.Join(Environment.NewLine, guides.Select(g => $"{g.Orientation} {g.Position} {g.Color}")));
}

Added New Property: IDrawingGuide.Color

The Color property has been added to the IDrawingGuide interface and implemented in the DrawingGuide class. It allows developers to customize the color of drawing guides.

Usage examples

The following code snippet shows how to change the color of the first drawing guide of the master slide:

using (var pres = new Presentation("MasterSlideDrawingGuides_out.pptx"))
{
    var guides = pres.Masters[0].DrawingGuides;
    guides[0].Color = Color.ForestGreen;

    pres.Save("MasterSlideDrawingGuides_ForestGreen.pptx", SaveFormat.Pptx);
}

Added New Methods: LowCode.Convert.ToJpeg, ToPng and ToTiff

New convenience methods ToJpeg, ToPng, and ToTiff have been added to the LowCode.Convert class. These methods simplify converting presentations into sets of raster images.

Usage examples

The following code snippet shows how to convert the input presentation to a set of JPEG images:

using (var pres = new Presentation("pres.pptx"))
{
    LowCode.Convert.ToJpeg(pres, "presImage.jpeg");
}

This code snippet demonstrates how to convert the input presentation to a set of JPEG images of a given size:

using (var pres = new Presentation("pres.ppt"))
{
   LowCode.Convert.ToJpeg(pres, "presImage.jpeg", new Size(720, 540));
}

This code snippet shows how to convert the input presentation to a set of PNG images in the Notes mode:

IRenderingOptions options = new RenderingOptions()
{
    SlidesLayoutOptions = new NotesCommentsLayoutingOptions()
    {
        NotesPosition = NotesPositions.BottomTruncated
    }
};
using (var pres = new Presentation("pres.pptx"))
{
    LowCode.Convert.ToPng(pres, "pres.png", 2f, options);
}

The following code shows how to convert the input presentation to a set of TIFF images:

using (var pres = new Presentation("pres.pptx"))
{
    LowCode.Convert.ToTiff(pres, "presImage.tiff");
}

This code snippet shows how to convert the input presentation to a set of the compressed TIFF images in the Notes mode:

ITiffOptions options = new TiffOptions()
{
    CompressionType = TiffCompressionTypes.CCITT3,
    SlidesLayoutOptions = new NotesCommentsLayoutingOptions()
    {
        NotesPosition = NotesPositions.BottomTruncated
    }
};

using (var pres = new Presentation("pres.pptx"))
    LowCode.Convert.ToTiff(pres, "pres.tiff", options, false);

Added New Class: LowCode.Merger

The new LowCode.Merger class provides API methods for merging multiple presentations of the same format into a single output file.

API Overview

public static class Merger
{
    public static void Process(string[] inputFileNames, string outputFileName);
    public static void Process(string[] inputFileNames, string outputFileName, ISaveOptions options);
    public static void Process(string[] inputFileNames, Stream outputStream);
    public static void Process(string[] inputFileNames, Stream outputStream, ISaveOptions options);
}

Usage examples

The following code snippet shows how to merge the set of input presentations of the same format into a single presentation file:

LowCode.Merger.Process(new string[] { "pres1.ppt", "pres2.ppt" }, "merged.ppt");

This code snippet demonstrates how to merge the set of input presentations into the PPTX presentation without generation of the new thumbnail:

LowCode.Merger.Process(new string[] { "pres1.pptx", "pres2.pptx" }, "merged.pptx", new PptxOptions() { RefreshThumbnail = false });

The following code snippet shows how to merge the set of input presentations of the same format and save to the memory stream:

using (var stream = new MemoryStream())
{
    LowCode.Merger.Process(new string[] { "pres1.ppt", "pres2.ppt" }, stream);
}