Aspose.Slides for .NET 18.7 Release Notes

SLIDESNET-40192Fill Data in ExcelInvestigation
SLIDESNET-40262Support for preserving last saved time and user when adding or changing custom document propertyFeature
SLIDESNET-25055Font size of legend, minimum & maximum values of axesFeature
SLIDESNET-26270Support for changing Series ColorFeature
SLIDESNET-30409Getting chart image from ChartExFeature
SLIDESNET-31630Change color of categories in a seriesFeature
SLIDESNET-33795Setting font related properties for chart data tableFeature
SLIDESNET-33828Setting font related properties for individual legend entryFeature
SLIDESNET-33909Setting font related properties for chart data tableFeature
SLIDESNET-34235Support for setting Chart Area rounded bordersFeature
SLIDESNET-34690Support for Stock chartFeature
SLIDESNET-39932Setting InvertIfNegative for individual series data pointFeature
SLIDESNET-38920RemoveEncryption() method removes the encryption from presentation when loaded in read only modeFeature
SLIDESNET-37929Incorrect character positioning in HTML representation of the presentation document in Safari for iOSBug
SLIDESNET-40200Missing close bracket in styles when saving as HTMLBug
SLIDESNET-37558Animation is gone after load and save PPT filesBug
SLIDESNET-38279Animation missing after saving PPTBug
SLIDESNET-40097Black rectangle in exported SVGBug
SLIDESNET-32214Thumbnail IssueBug
SLIDESNET-32304Improper text rendering in exported PDFBug
SLIDESNET-34008Animation effects are changed from individual bullet to entire list of bulletsBug
SLIDESNET-34979Footer text is missing in generated thumbnailBug
SLIDESNET-35856Chart Axis Data is always coming as zeroBug
SLIDESNET-35857Data label properties are coming as NaN when creating a new chartBug
SLIDESNET-36078Wrong text color in generated PDFBug
SLIDESNET-37336Problem with chart legendBug
SLIDESNET-37829Slide title position changes after saving PPTBug
SLIDESNET-38922Argument Null exception on saving PPT presentation to PPTMBug
SLIDESNET-39162Charts gets corrupted on saving a password protected presentationBug
SLIDESNET-39821PPTX to PDF not properly convertedBug
SLIDESNET-39859Text is improperly rendered in exported PDFBug
SLIDESNET-39883Error rendering slideBug
SLIDESNET-39903ArgumentOutOfRangeException on loading the presentationBug
SLIDESNET-39993Chart is improperly rendered in generated PDFBug
SLIDESNET-40008Content moved in generated HTMLBug
SLIDESNET-40115Wrong size of manual plot areaBug
SLIDESNET-40145Issue in setting Notes datetime and footerBug
SLIDESNET-40153Wrong gradient direction for text in generated presentationBug
SLIDESNET-40161Setting chart.ChartData.SetRange(range) resets the chart formattingBug
SLIDESNET-40182PPT Saving in PDF format shows data blurredBug
SLIDESNET-40183XmlException on loading PPTXBug
SLIDESNET-40184Chart is improperly rendered in generated PDFBug
SLIDESNET-40207Changing a shape applied border color is applied to all copied shapes of PPTXBug
SLIDESNET-40215PPT Zoom issueBug
SLIDESNET-40222The generated PDF with SaveMetafilesAsPng = false failed to open in Adobe ReaderBug
SLIDESNET-40226Issue with document in portrait orientation while exporting to PDFBug
SLIDESNET-40235PPTXReadException on loading presentationBug
SLIDESNET-40236Exception on loading presentationBug
SLIDESNET-40238Presentation repair message on converting PPT to PPTXBug
SLIDESNET-40241Exception on loading and saving presentationBug
SLIDESNET-40260Unable to display percentage and dollar value in box and whisker chartBug
SLIDESNET-15302Embedded OLE Object size changes in PPTX when selected in MS PowerPointBug
SLIDESNET-21171Resaving the Excel Object causes resized when opened in PowerPoint 2010Bug

Public API Changes

IChart.HasRoundedCorners property has been added

IChart.HasRoundedCorners and Chart.HasRoundedCorners properties have been added.

Specifies the chart area shall have rounded corners.

using (Presentation presentation = new Presentation())
    ISlide slide = presentation.Slides[0];
    IChart chart = slide.Shapes.AddChart(ChartType.ClusteredColumn, 20, 100, 600, 400);
    chart.HasRoundedCorners = true;
    presentation.Save("output.pptx", SaveFormat.Pptx);

IChartDataPoint.InvertIfNegative property has been added

IChartDataPoint.InvertIfNegative and ChartDataPoint.InvertIfNegative properties have been added.

Specifies the data point shall invert its colors if the value is negative.

using (Presentation pres = new Presentation())
    IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 50, 50, 600, 400, true);
    IChartSeriesCollection series = chart.ChartData.Series;

    series.Add(chart.ChartData.ChartDataWorkbook.GetCell(0, "B1"), chart.Type);
    series[0].DataPoints.AddDataPointForBarSeries(chart.ChartData.ChartDataWorkbook.GetCell(0, "B2",-5));
    series[0].DataPoints.AddDataPointForBarSeries(chart.ChartData.ChartDataWorkbook.GetCell(0, "B3",3));
    series[0].DataPoints.AddDataPointForBarSeries(chart.ChartData.ChartDataWorkbook.GetCell(0, "B4",-2));
    series[0].DataPoints.AddDataPointForBarSeries(chart.ChartData.ChartDataWorkbook.GetCell(0, "B5",1));

    series[0].InvertIfNegative = false;

    series[0].DataPoints[2].InvertIfNegative = true;

    pres.Save("output.pptx", SaveFormat.Pptx);

IChartDataPointCollection.AddDataPointForStockSeries() method has been added

IChartDataPointCollection.AddDataPointForStockSeries() and ChartDataPointCollection.AddDataPointForStockSeries() methods have been added.

These methods create the new data point and adds it to the end of collection.

Applicable for series which chartType is one of Stock subtypes (see also ChartTypeCharacterizer.IsChartTypeStock(ChartType) method).

using (Presentation pres = new Presentation())
    IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.OpenHighLowClose, 50, 50, 600, 400, false);


    IChartDataWorkbook wb = chart.ChartData.ChartDataWorkbook;

    chart.ChartData.Categories.Add(wb.GetCell(0, 1, 0, "A"));
    chart.ChartData.Categories.Add(wb.GetCell(0, 2, 0, "B"));
    chart.ChartData.Categories.Add(wb.GetCell(0, 3, 0, "C"));

    chart.ChartData.Series.Add(wb.GetCell(0, 0, 1, "Open"), chart.Type);
    chart.ChartData.Series.Add(wb.GetCell(0, 0, 2, "High"), chart.Type);
    chart.ChartData.Series.Add(wb.GetCell(0, 0, 3, "Low"), chart.Type);
    chart.ChartData.Series.Add(wb.GetCell(0, 0, 4, "Close"), chart.Type);

    IChartSeries series = chart.ChartData.Series[0];

    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 1, 1, 72));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 2, 1, 25));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 3, 1, 38));

    series = chart.ChartData.Series[1];
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 1, 2, 172));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 2, 2, 57));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 3, 2, 57));

    series = chart.ChartData.Series[2];
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 1, 3, 12));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 2, 3, 12));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 3, 3, 13));

    series = chart.ChartData.Series[3];
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 1, 4, 25));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 2, 4, 38));
    series.DataPoints.AddDataPointForStockSeries(wb.GetCell(0, 3, 4, 50));

    chart.ChartData.SeriesGroups[0].UpDownBars.HasUpDownBars = true;
    chart.ChartData.SeriesGroups[0].HiLowLinesFormat.Line.FillFormat.FillType = FillType.Solid;

    foreach (IChartSeries ser in chart.ChartData.Series)
        ser.Format.Line.FillFormat.FillType = FillType.NoFill;

    pres.Save("output.pptx", SaveFormat.Pptx);

IChartSeriesGroup.HiLowLinesFormat property has been added

Specifies HiLowLines format. HiLowLines applied with HiLowClose, OpenHiLowClose, VolumeHiLowClose and VolumeOpenHiLowClose chart types.

IChartSeriesGroup.HiLowLinesFormat and ChartSeriesGroup.HiLowLinesFormat properties have been added.

using (Presentation pres = new Presentation())
    IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.OpenHighLowClose, 50, 50, 600, 400, true);

    chart.ChartData.SeriesGroups[0].HiLowLinesFormat.Line.FillFormat.FillType = FillType.Solid;
    chart.ChartData.SeriesGroups[0].HiLowLinesFormat.Line.FillFormat.SolidFillColor.Color = Color.Red;

    pres.Save("output.pptx", SaveFormat.Pptx);

Implementation of method IChartData.SetRange() has been changed.

Implementation of the method has been changed to avoid lost of series settings (series type, formatting and etc.). Only data points will be updated.

If amount of series in data range greater than count of series in the chart data then additional series with the same type as a last series in the current collection will be added to the end of the collection.

IPdfOptions.ImageTransparentColor and IPdfOptions.ApplyImageTransparent has been added

IPdfOptions.ImageTransparentColor and IPdfOptions.ApplyImageTransparent has been added.

ImageTransparentColor sets the image transparent color.

ApplyImageTransparent Applies the specified transparent color to an image if true. True by default.

using (Presentation pres = new Presentation("pres.pptx"))
    pres.Save("pres.pdf", SaveFormat.Pdf, new PdfOptions
        ApplyImageTransparent = true,
        ImageTransparentColor = Color.Transparent

LightStyle1Accent5 value has been added to TableStylePreset enum

LightStyle1Accent5 value has been added to TableStylePreset enum.

It represents “Light Style 1 - Accent 5” preset table style.

The code snippet below shows how to add new Table with “Light Style 1 - Accent 5” style:

using (Presentation presentation = new Presentation())
    ITable table = presentation.Slides[0].Shapes.AddTable(50, 50, new double[] { 200, 200 }, new double[] { 50, 50, 50, 50 });
    table.StylePreset = TableStylePreset.LightStyle1Accent5;

    presentation.Save(path + "presentation-out.pptx", SaveFormat.Pptx);

Obsolete HeaderFooterManager class has been deleted

Obsolete HeaderFooterManager class has been deleted.

Please use class PresentationHeaderFooterManager or one of the corresponding classes MasterSlideHeaderFooterManager, LayoutSlideHeaderFooterManager, SlideHeaderFooterManager instead.