Aspose.Slides.NET 15.10.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Aspose.Slides.NET --version 15.10.0
NuGet\Install-Package Aspose.Slides.NET -Version 15.10.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<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
#r "nuget: Aspose.Slides.NET, 15.10.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Aspose.Slides.NET as a Cake Addin
#addin nuget:?package=Aspose.Slides.NET&version=15.10.0

// Install Aspose.Slides.NET as a Cake Tool
#tool nuget:?package=Aspose.Slides.NET&version=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.

Product Compatible and additional computed target framework versions.
.NET Framework net20 is compatible.  net35 was computed.  net35-client is compatible.  net40 was computed.  net40-client is compatible.  net403 was computed.  net45 was computed.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (13)

Showing the top 5 NuGet packages that depend on Aspose.Slides.NET:

Package Downloads
TrueSight

Package Description

Aspose.Total

Aspose.Total for .NET is the most complete package of all .NET file format APIs offered by Aspose. It empowers developers to create, edit, render, print and convert between a wide range of popular document formats within any .NET, C#, ASP.NET and VB.NET applications.

Verify.Aspose The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Extends Verify (https://github.com/VerifyTests/Verify) to allow verification via Aspose.

Weavy.Core

A class library containing core business logic, data access and utility methods required by Weavy.

Aspose.ApprovalTests

Extends ApprovalTests to allow approval via Aspose.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
24.3.0 3,353 3/15/2024
24.2.0 10,746 2/16/2024
24.1.0 14,185 1/19/2024
23.12.0 27,033 12/11/2023
23.11.0 33,820 11/16/2023
23.10.0 47,167 10/19/2023
23.9.0 45,408 9/20/2023
23.8.0 44,193 8/21/2023
23.7.0 33,159 7/18/2023
23.6.0 29,415 6/26/2023
23.5.0 93,026 5/19/2023
23.4.0 78,801 4/20/2023
23.3.1 61,855 3/23/2023
23.2.0 43,795 2/27/2023
23.1.0 111,189 1/27/2023
22.12.0 121,506 12/16/2022
22.11.0 92,680 11/23/2022
22.10.0 175,178 10/18/2022
22.9.0 88,513 9/13/2022
22.8.0 48,799 8/17/2022
22.7.0 70,547 7/19/2022
22.6.0 77,802 6/24/2022
22.5.0 89,433 5/17/2022
22.4.0 82,296 4/15/2022
22.3.0 58,010 3/17/2022
22.2.0 101,524 2/16/2022
22.1.0 107,578 1/19/2022
21.12.0 79,917 12/17/2021
21.11.0 95,410 11/16/2021
21.10.0 79,416 10/7/2021
21.9.0 277,678 9/20/2021
21.8.0 89,482 8/16/2021
21.7.0 73,749 7/15/2021
21.6.0 32,688 6/17/2021
21.5.0 55,406 5/18/2021
21.4.0 87,902 4/18/2021
21.3.0 80,647 3/19/2021
21.2.0 89,519 2/16/2021
21.1.0 89,440 1/21/2021
20.12.0 83,234 12/10/2020
20.11.1 6,140 12/10/2020
20.11.0 118,680 12/23/2020
20.10.0 67,408 10/19/2020
20.9.0 23,677 9/25/2020
20.8.0 57,753 8/17/2020
20.7.0 46,297 7/17/2020
20.6.0 62,081 6/12/2020
20.5.0 54,388 5/7/2020
20.4.0 40,296 4/22/2020
20.3.0 48,561 3/23/2020
20.2.0 74,248 2/17/2020
20.1.0 63,929 1/17/2020
19.12.0 52,025 12/31/2019
19.11.0 45,797 11/27/2019
19.10.0 65,639 10/29/2019
19.9.0 59,558 9/12/2019
19.8.0 12,095 8/30/2019
19.7.0 38,374 7/26/2019
19.6.0 24,662 6/25/2019
19.5.0 19,356 5/31/2019
19.4.0 29,661 4/26/2019
19.3.0 12,356 4/3/2019
19.2.0 35,348 2/28/2019
19.1.0 82,732 1/30/2019
18.12.0 47,980 12/27/2018
18.11.0 23,226 11/30/2018
18.10.0 52,733 10/30/2018
18.9.0 16,910 9/30/2018
18.8.0 15,923 8/29/2018
18.7.0 27,642 7/27/2018
18.6.0 36,751 7/1/2018
18.5.0 16,251 5/30/2018
18.4.0 31,743 5/3/2018
18.3.0 17,638 4/1/2018
18.2.1 50,894 3/7/2018
18.2.0 25,571 2/28/2018
18.1.0 27,682 1/30/2018
17.12.1 14,490 12/26/2017
17.12.0 4,245 12/16/2017
17.11.0 7,443 11/30/2017
17.10.0 24,273 10/31/2017
17.9.1 7,102 10/12/2017
17.9.0 6,683 10/2/2017
17.8.0 46,622 8/30/2017
17.7.0 15,182 7/31/2017
17.6.0 10,528 7/1/2017
17.5.0 7,878 5/31/2017
17.4.0 8,860 4/28/2017
17.3.0 15,409 4/2/2017
17.2.0 34,801 3/1/2017
17.1.0 7,239 1/31/2017
16.12.1 14,901 1/16/2017
16.12.0 5,468 12/27/2016
16.11.0 8,340 11/30/2016
16.10.0 11,558 11/4/2016
16.9.0 7,896 10/12/2016
16.8.0 33,927 9/27/2016
16.7.0 5,048 8/22/2016
16.6.0 48,785 7/15/2016
16.5.0 12,319 6/16/2016
16.4.0 8,752 5/16/2016
16.3.0 18,253 4/11/2016
16.2.0 8,646 3/17/2016
16.1.0 19,659 2/4/2016
15.11.0 27,403 1/11/2016
15.10.0 13,069 12/10/2015
15.9.0 10,185 11/6/2015
15.8.1 4,041 10/16/2015
15.8.0 4,899 10/5/2015
15.7.0 62,355 9/3/2015
15.6.0 31,700 7/22/2015
15.5.0 9,498 6/16/2015
15.4.0 7,753 5/14/2015
15.3.1 5,765 4/23/2015
15.3.0 3,780 4/14/2015
15.2.0 41,642 3/6/2015
15.1.0 10,366 2/3/2015
14.10.0 12,020 11/28/2014
14.9.0 6,196 11/11/2014
14.8.1 4,450 10/24/2014
14.8.0 3,593 10/16/2014
14.7.0 4,835 9/7/2014
14.6.0 4,468 8/6/2014
14.5.0 8,274 7/16/2014
14.4.0 5,688 6/2/2014
14.3.0 7,034 5/6/2014
14.2.0 4,142 3/24/2014
14.1.2 5,351 2/17/2014
14.1.1 3,484 2/10/2014
14.1.0.2 3,373 2/6/2014
13.12.0 4,383 12/30/2013
8.4.2 38,596 6/5/2014
8.4.1 3,999 5/6/2014
8.4.0 4,617 3/3/2014
8.3.0.1 3,670 2/3/2014
8.2.0 3,542 12/27/2013
8.1.0 10,901 12/16/2013
8.0.0 4,713 10/25/2013
7.9.0 3,956 10/8/2013
7.8.0 3,592 9/3/2013
7.7.0 11,597 8/4/2013
7.6.0 6,631 7/5/2013
7.5.0 6,018 5/27/2013
7.4.0 10,088 4/24/2013
7.3.0 3,443 4/10/2013
7.2.0 4,039 3/8/2013
7.1.0 5,793 1/28/2013
7.0.0 5,470 12/31/2012
6.9.0 3,412 12/10/2012
6.8.0 3,778 10/30/2012
6.7.0 4,053 10/4/2012
6.6.0 3,306 9/13/2012
6.5.0 3,685 7/27/2012
6.4.0 3,404 6/27/2012
6.3.0 3,338 5/29/2012
6.2.0 3,519 5/7/2012
6.1.0 3,425 3/28/2012
6.0.0 3,749 3/2/2012
5.9.0.1 7,375 2/16/2012
5.9.0 6,071 2/16/2012

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);
}