Browse our Products

Aspose.Slides for .NET 17.3 Release Notes

KeySummaryCategory
SLIDESNET-38440Get audio/video rendered as audio/video in HtmlFeature
SLIDESNET-38361Support of detection Microsoft PowerPoint 95 presentationsFeature
SLIDESNET-38354Loading fonts from assemblyFeature
SLIDESNET-38192Support to get chart external data source workbook pathFeature
SLIDESNET-38149Get Actual Max value of vertical axis on a chartFeature
SLIDESNET-37586Getting actual absolute X,Y values for chart data pointsFeature
SLIDESNET-34526Support for adding line in chart areaFeature
SLIDESNET-38426Create new chart base on style of existing chartFeature
SLIDESNET-38436When PPT file is saved as PDF, the percentage sign goes on the wrong sideBug
SLIDESNET-38425When PPTX is saved as PDF by using PdfCompliance.PdfA1b, the System.ArgumentException occursBug
SLIDESNET-38401Chart Plot Area is improperly rendered in generated PDFBug
SLIDESNET-38386PPTX to PDF graph not rendering correctlyBug
SLIDESNET-38385PPTX to PDF table not renderingBug
SLIDESNET-38381Black background when rendering pps or ppt to imageBug
SLIDESNET-38363File corrupted after savingBug
SLIDESNET-38324Exception while converting PPTX to PDF: Value too large or too smallBug
SLIDESNET-38314Round brackets are improperly rendered in generated PDFBug
SLIDESNET-38288After load and save of PPT file, the footer disappears.Bug
SLIDESNET-38286The background color of a shape was changed from white to green in a specific PPTBug
SLIDESNET-38283Fonts changed after saving pptBug
SLIDESNET-38282Text position changed after saving pptBug
SLIDESNET-38232Text being overlapped with ImageBug
SLIDESNET-38224Rendering issues when converting from PPTX to PDFBug
SLIDESNET-38223Squares are changed after loading and saving a pptBug
SLIDESNET-38221Ppt changed after savingBug
SLIDESNET-38178When saving as pdf the hyperlink (URLs) becomes mojibakeBug
SLIDESNET-38134Ppt not properly converted to htmlBug
SLIDESNET-38088Ppt changes after savingBug
SLIDESNET-38024Missing characters in converted svg and thumbnail when uses ReplaceFont()Bug
SLIDESNET-37557An animation star is added to all of the slides after loading and saving a pptBug
SLIDESNET-37463Problem while translating the pdf generated by Aspose.SlidesBug
SLIDESNET-37102Animations in MasterSlide lost on ppt load and saveBug
SLIDESNET-37101Transitions appear on ppt load and saveBug
SLIDESNET-34336Wrong value axis Maximum value on value axis scaleBug

Public API Changes

ActualMaxValue, ActualMinValue, ActualMajorUnit, ActualMinorUnit, ActualMajorUnitScale, ActualMinorUnitScale have been added to Axis, IAxis

  • double ActualMaxValue         Gets actual maximum value on the axis.
  • double ActualMinValue         Gets actual minimum value on the axis.
  • double ActualMajorUnit         Gets actual major unit of the axis.
  • double ActualMinorUnit        Gets actual minor unit of the axis.
  • TimeUnitType ActualMajorUnitScale            Gets actual major unit scale of the axis.
  • TimeUnitType ActualMinorUnitScale            Gets actual minor unit scale of the axis.

Call method IChart.ValidateChartLayout() previously to get actual values for these properties.

using (Presentation pres = new Presentation())
{
     Chart chart = (Chart)pres.Slides[0].Shapes.AddChart(ChartType.Area, 100, 100, 500, 350);
     chart.ValidateChartLayout();

     double maxValue = chart.Axes.VerticalAxis.ActualMaxValue;
     double minValue = chart.Axes.VerticalAxis.ActualMinValue;

     double majorUnit = chart.Axes.HorizontalAxis.ActualMajorUnit;
     double minorUnit = chart.Axes.HorizontalAxis.ActualMinorUnit;
}

ActualX, ActualY, ActualWidth, ActualHeight have been added to IChartPlotArea, ChartPlotArea

float ActualX  Gets actual X location (left) of the chart element relative to the left top corner of the chart. Call method IChart.ValidateChartLayout() before to get actual values.

  • float ActualY  Gets actual top of the chart element relative to the left top corner of the chart. Call method IChart.ValidateChartLayout() before to get actual values.
  • float ActualWidth       Gets actual width of the chart element. Call method IChart.ValidateChartLayout() before to get actual values.
  • float ActualHeight      Gets actual height of the chart element. Call method IChart.ValidateChartLayout() before to get actual values.

Call method IChart.ValidateChartLayout() previously to get actual values for these properties.

using (Presentation pres = new Presentation())
{
     Chart chart = (Chart)pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 100, 100, 500, 350);
     chart.ValidateChartLayout();

     double x = chart.PlotArea.ActualX;
     double y = chart.PlotArea.ActualY;
     double w = chart.PlotArea.ActualWidth;
     double h = chart.PlotArea.ActualHeight;
}

DataSourceType and ExternalWorkbookPath properties has been added to IChartData interface and ChartData class

Two new properties have been added to IChartData interface and ChartData class:

DataSourceType of type ChartDataSourceType, which represents data source of the chart.

ExternalWorkbookPath of type string, which represents external workbook path if data source is external, null otherwise.

ChartDataSourceType is a new enum which represents the two values: InternalWorkbook and ExternalWorkbook.

Example:

using (Presentation pres = new Presentation("pres.pptx"))
{
     ISlide slide = pres.Slides[1];
     IChart chart = (IChart)slide.Shapes[0];
     ChartDataSourceType sourceType = chart.ChartData.DataSourceType;
     if (sourceType == ChartDataSourceType.ExternalWorkbook)
     {
         string path = chart.ChartData.ExternalWorkbookPath;
     }
}

IActualLayout interface has been added

Properties of IActualLayout provide information about actual position of parent chart element. It is necessary to call method IChart.ValidateChartLayout() previously to fill properties with actual values.

using (Presentation pres = new Presentation())
{
     Chart chart = (Chart)pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 100, 100, 500, 350);
     chart.ValidateChartLayout();

     double x = chart.PlotArea.ActualX;
     double y = chart.PlotArea.ActualY;
     double w = chart.PlotArea.ActualWidth;
     double h = chart.PlotArea.ActualHeight;
}

Method ValidateChartLayout() has been added to IChart interface and Chart class

Calculates actual values of chart elements. The actual values include position of elements that implement IActualLayout interface (IActualLayout.ActualX, IActualLayout.ActualY, IActualLayout.ActualWidth, IActualLayout.ActualHeight) and actual axes values (IAxis.ActualMaxValue, IAxis.ActualMinValue, IAxis.ActualMajorUnit, IAxis.ActualMinorUnit, IAxis.ActualMajorUnitScale, IAxis.ActualMinorUnitScale).

using (Presentation pres = new Presentation())
{
     Chart chart = (Chart)pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 100, 100, 500, 350);
     chart.ValidateChartLayout();
     double x = chart.PlotArea.ActualX;
     double y = chart.PlotArea.ActualY;
     double w = chart.PlotArea.ActualWidth;
     double h = chart.PlotArea.ActualHeight;
}

New method LoadExternalFont has been added to FontsLoader class

The new method LoadExternalFont has been added to FontsLoader class:

public static void LoadExternalFont(byte[] data)

This method allows to add font from the binary data.

// loading presentation uses SomeFont which is not installed on the system
using(Presentation pres = new Presentation("pres.pptx")
{
     // load SomeFont from file into the byte array
     byte[] fontData = File.ReadAllBytes(@"fonts\SomeFont.ttf"));

     // load font represented as byte array
     FontsLoader.LoadExternalFont(fontData);

     // font SomeFont will be available during the rendering or other operations
}

Ppt95 value has been added to Aspose.Slides.LoadFormat enumeration

The new Ppt95 value has been added to Aspose.Slides.LoadFormat enumeration. This value represents Microsoft PowerPoint 95 presentation format.

Code snippet to check whether the presentation format is old Microsoft PowerPoint 95:

bool isOldFormat = PresentationFactory.Instance.GetPresentationInfo(path).LoadFormat == LoadFormat.Ppt95;