Aspose.Slides.NET 15.10.0

Aspose.Slides is a PowerPoint management library for working with Microsoft PowerPoint files without using Microsoft PowerPoint. It allows developers to work with PPT, PPS, POT, PPTX, PPSX, POTX and ODP files on ASP.NET web applications, web services and Windows applications.

There is a newer version of this package available.
See the version list below for details.
Install-Package Aspose.Slides.NET -Version 15.10.0
dotnet add package Aspose.Slides.NET --version 15.10.0
<PackageReference Include="Aspose.Slides.NET" Version="15.10.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Aspose.Slides.NET --version 15.10.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

Minor Changes

SLIDESNET-36651 - Animating chart series API

Other improments and changes
Bug Fixes

SLIDESNET-37012 - Empty column is missing in generated PDF
SLIDESNET-37006 - Incorrect text on ppt to html in Chrome
SLIDESNET-36987 - Chart label font color changed on saving pptx
SLIDESNET-36956 - Presentation gets corrupt on adding slide notes
SLIDESNET-36950 - Aspose.Slides corrupts PPTX file if it contains a trash folder
SLIDESNET-36948 - Implement ODP rotate and translate frame's transformations
SLIDESNET-36935 - Saving POT to POTX results in corrupted presenatation
SLIDESNET-36920 - Artifacts from chart on generated thumbnail
SLIDESNET-36911 - Background missing in generated thumbnail
SLIDESNET-36906 - Problem with number format of list in generated PDF
SLIDESNET-36902 - Saved pptx presentation requires recovery in PowerPoint
SLIDESNET-36879 - Bullets are lost in generated html file
SLIDESNET-36862 - Cell's border is not completely drawn in case of adjacent merged cells
SLIDESNET-36848 - Layouts are distorted
SLIDESNET-36607 - Text on pdf is lost when opened in mac
SLIDESNET-36052 - Series Fill Color not getting applied on secondary Y axis
SLIDESNET-35988 - Exception on exporting PPT to PDF
SLIDESNET-35768 - Fonts are not rendered from HTML to presentation
SLIDESNET-35590 - ArgumentException is thrown while Odp loading
SLIDESNET-35579 - Wrong Display of Chart data when converting PPTX to JPG
SLIDESNET-35541 - The bullet is improperly rendered in generated slide thumbnail
SLIDESNET-35539 - Table cell border is rendered wrong
SLIDESNET-35482 - Improper charts rendering
SLIDESNET-35422 - Object Reference Exception is thrown on opening the PPTX file
SLIDESNET-35404 - Aspose.Slides failed to load chart series fill if it is Automatic fill color
SLIDESNET-34585 - Border for merged table cells is improperly applied

Public API Changes
A new VideoPlayerHtmlController added to support export od media files to HTML

The new public class VideoPlayerHtmlController has been added to Aspose.Slides.Export namespace. Using the instance of this class user can export video and audio files into HTML.
VideoPlayerHtmlController contructors accepts the following parameters:
path: The path where video and audio files will be generated
fileName: The name of the HTML file
baseUri: The base URI which will be used to generate links
Usage example:

using (Presentation pres = new Presentation("example.pptx"))
{
   const string path = "path";
   const string fileName = "video.html";
   const string baseUri = "http://www.example.com/";

   VideoPlayerHtmlController controller = new VideoPlayerHtmlController(path: path, fileName: fileName, baseUri: baseUri);

   HtmlOptions htmlOptions = new HtmlOptions(controller);
   SVGOptions svgOptions = new SVGOptions(controller);

   htmlOptions.HtmlFormatter = HtmlFormatter.CreateCustomFormatter(controller);
   htmlOptions.SlideImageFormat = SlideImageFormat.Svg(svgOptions);

   pres.Save(Path.Combine(path, fileName), SaveFormat.Html, htmlOptions);
}

Chart series animation API has been added

The new 2 methods have been added to Aspose.Slides.Animation.ISequence interface.

IEffect AddEffect(IChart chart, EffectChartMajorGroupingType type, int index, EffectType effectType, EffectSubtype subtype, EffectTriggerType triggerType);
IEffect AddEffect(IChart chart, EffectChartMinorGroupingType type, int seriesIndex, int categoriesIndex, EffectType effectType, EffectSubtype subtype, EffectTriggerType triggerType);

These methods are intended to support the chart's elements animations:
by series
by categories
by series elements
by categories elements

The two new enums EffectChartMajorGroupingType and EffectChartMinorGroupingType related to the chart's elements animation were introduced.

To add a series animation to the chart the following code may be used:

using (Presentation pres = new Presentation(inFileName))
{
   var slide = pres.Slides[0] as Slide;
   var shapes = slide.Shapes as ShapeCollection;
   var chart = shapes[0] as IChart;

   slide.Timeline.MainSequence.AddEffect(chart, EffectType.Fade, EffectSubtype.None,
       EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMajorGroupingType.BySeries, 0,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMajorGroupingType.BySeries, 1,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMajorGroupingType.BySeries, 2,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMajorGroupingType.BySeries, 3,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   pres.Save(outFileName, SaveFormat.Pptx);
}

Categories animation:

using (Presentation pres = new Presentation(inFileName))
{
   var slide = pres.Slides[0] as Slide;
   var shapes = slide.Shapes as ShapeCollection;
   var chart = shapes[0] as IChart;

   slide.Timeline.MainSequence.AddEffect(chart, EffectType.Fade, EffectSubtype.None,
       EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMajorGroupingType.ByCategory, 0,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMajorGroupingType.ByCategory, 1,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMajorGroupingType.ByCategory, 2,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMajorGroupingType.ByCategory, 3,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   pres.Save(outFileName, SaveFormat.Pptx);
}

Series elements animation:

using (Presentation pres = new Presentation(inFileName))
{
   var slide = pres.Slides[0] as Slide;
   var shapes = slide.Shapes as ShapeCollection;
   var chart = shapes[0] as IChart;

   slide.Timeline.MainSequence.AddEffect(chart, EffectType.Fade, EffectSubtype.None,
       EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 0, 0,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 0, 1,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 0, 2,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 0, 3,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 1, 0,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 1, 1,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 1, 2,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 1, 3,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 2, 0,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 2, 1,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 2, 2,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInSeries, 2, 3,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   pres.Save(outFileName, SaveFormat.Pptx);
}

Categories elements animation:

using (Presentation pres = new Presentation(inFileName))
{
   var slide = pres.Slides[0] as Slide;
   var shapes = slide.Shapes as ShapeCollection;
   var chart = shapes[0] as IChart;

   slide.Timeline.MainSequence.AddEffect(chart, EffectType.Fade, EffectSubtype.None,
       EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 0, 0,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 0, 1,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 0, 2,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 0, 3,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 1, 0,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 1, 1,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 1, 2,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 1, 3,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 2, 0,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 2, 1,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 2, 2,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);
   ((Sequence)slide.Timeline.MainSequence).AddEffect(chart,
       EffectChartMinorGroupingType.ByElementInCategory, 2, 3,
       EffectType.Appear, EffectSubtype.None, EffectTriggerType.AfterPrevious);

   pres.Save(outFileName, SaveFormat.Pptx);
}

Dependencies

This package has no dependencies.

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
19.9.0 2,774 9/12/2019
19.8.0 1,387 8/30/2019
19.7.0 9,557 7/26/2019
19.6.0 3,117 6/25/2019
19.5.0 4,921 5/31/2019
19.4.0 5,734 4/26/2019
19.3.0 3,039 4/3/2019
19.2.0 7,448 2/28/2019
19.1.0 9,228 1/30/2019
18.12.0 5,155 12/27/2018
18.11.0 4,147 11/30/2018
18.10.0 13,026 10/30/2018
18.9.0 3,300 9/30/2018
18.8.0 3,625 8/29/2018
18.7.0 9,896 7/27/2018
18.6.0 13,245 7/1/2018
18.5.0 6,372 5/30/2018
18.4.0 3,529 5/3/2018
18.3.0 3,252 4/1/2018
18.2.1 5,819 3/7/2018
18.2.0 2,099 2/28/2018
18.1.0 3,258 1/30/2018
17.12.1 5,719 12/26/2017
17.12.0 857 12/16/2017
17.11.0 1,341 11/30/2017
17.10.0 4,540 10/31/2017
17.9.1 3,557 10/12/2017
17.9.0 1,544 10/2/2017
17.8.0 9,812 8/30/2017
17.7.0 6,235 7/31/2017
17.6.0 2,498 7/1/2017
17.5.0 2,046 5/31/2017
17.4.0 2,729 4/28/2017
17.3.0 3,164 4/2/2017
17.2.0 7,933 3/1/2017
17.1.0 3,188 1/31/2017
16.12.1 3,954 1/16/2017
16.12.0 1,567 12/27/2016
16.11.0 2,425 11/30/2016
16.10.0 2,390 11/4/2016
16.9.0 3,209 10/12/2016
16.8.0 2,959 9/27/2016
16.7.0 1,541 8/22/2016
16.6.0 18,356 7/15/2016
16.5.0 3,256 6/16/2016
16.4.0 3,715 5/16/2016
16.3.0 8,270 4/11/2016
16.2.0 4,305 3/17/2016
16.1.0 6,295 2/4/2016
15.11.0 10,398 1/11/2016
15.10.0 9,255 12/10/2015
15.9.0 5,873 11/6/2015
15.8.1 944 10/16/2015
15.8.0 1,242 10/5/2015
15.7.0 3,228 9/3/2015
15.6.0 8,200 7/22/2015
15.5.0 2,767 6/16/2015
15.4.0 1,832 5/14/2015
15.3.1 1,030 4/23/2015
15.3.0 693 4/14/2015
15.2.0 10,914 3/6/2015
15.1.0 1,314 2/3/2015
14.10.0 4,673 11/28/2014
14.9.0 1,512 11/11/2014
14.8.1 1,409 10/24/2014
14.8.0 653 10/16/2014
14.7.0 1,867 9/7/2014
14.6.0 1,159 8/6/2014
14.5.0 3,158 7/16/2014
14.4.0 1,777 6/2/2014
14.3.0 2,008 5/6/2014
14.2.0 1,176 3/24/2014
14.1.2 1,589 2/17/2014
14.1.1 654 2/10/2014
14.1.0.2 571 2/6/2014
13.12.0 1,512 12/30/2013
8.4.2 5,688 6/5/2014
8.4.1 1,176 5/6/2014
8.4.0 792 3/3/2014
8.3.0.1 688 2/3/2014
8.2.0 635 12/27/2013
8.1.0 5,106 12/16/2013
8.0.0 1,661 10/25/2013
7.9.0 1,027 10/8/2013
7.8.0 747 9/3/2013
7.7.0 3,636 8/4/2013
7.6.0 819 7/5/2013
7.5.0 1,055 5/27/2013
7.4.0 7,333 4/24/2013
7.3.0 842 4/10/2013
7.2.0 1,070 3/8/2013
7.1.0 3,145 1/28/2013
7.0.0 867 12/31/2012
6.9.0 809 12/10/2012
6.8.0 878 10/30/2012
6.7.0 1,228 10/4/2012
6.6.0 746 9/13/2012
6.5.0 858 7/27/2012
6.4.0 783 6/27/2012
6.3.0 708 5/29/2012
6.2.0 751 5/7/2012
6.1.0 768 3/28/2012
6.0.0 746 3/2/2012
5.9.0.1 767 2/16/2012
5.9.0 1,189 2/16/2012
Show less