Browse our Products

Aspose.Slides for Java 21.12 Release Notes

KeySummaryCategoryRelated Documentation
SLIDESNET-42825LowCode API to provide simple interface for common methodsFeature
SLIDESNET-37300Charts callout failed to render in exported PDFFeaturehttps://docs.aspose.com/slides/net/chart-data-label/
SLIDESJAVA-38256Use Aspose.Slides for Net 21.12 featuresEnhancement
SLIDESJAVA-34931Getting Extra Tags When Loading Presentation in ASPOSE SLIDES JAVA 15.5.0Bughttps://docs.aspose.com/slides/java/save-presentation/
SLIDESJAVA-38672Loading PPT file throws ArrayIndexOutOfBoundsExceptionBughttps://docs.aspose.com/slides/java/open-presentation/
SLIDESJAVA-38645PPTX to PDF result in infinite processing timeBughttps://docs.aspose.com/slides/java/convert-powerpoint-to-pdf/
SLIDESJAVA-38673Loading PPT file throws NullPointerExceptionBughttps://docs.aspose.com/slides/java/open-presentation/
SLIDESJAVA-38631Chart is displayed incorrectly when converting PPTX to PDFBughttps://docs.aspose.com/slides/java/convert-powerpoint-to-pdf/
SLIDESJAVA-38584Charts are not showing properly in generated PDFBughttps://docs.aspose.com/slides/java/convert-powerpoint-to-pdf/
SLIDESJAVA-38636SmartArt rotation effect missing in generated PDFBughttps://docs.aspose.com/slides/java/convert-powerpoint-to-pdf/
SLIDESJAVA-38637Chart bevel effect missing in generated PDFBughttps://docs.aspose.com/slides/java/convert-powerpoint-to-pdf/
SLIDESJAVA-38679Ink content is missing after saving PPT to PPTBughttps://docs.aspose.com/slides/java/save-presentation/
SLIDESJAVA-35681Slide Masters and Layouts difference in .ppt and .pptx filesBughttps://docs.aspose.com/slides/java/slide-layout/
SLIDESJAVA-34117Support for setting text properties for chart data tableFeaturehttps://docs.aspose.com/slides/java/chart-data-table/

Public API Changes

Support for Summary Zoom and Section Zoom

We implemented support for Section zoom and Summary zoom. See the Manage Zoom article.

This Java code demonstrates the creation of SectionZoomFrame and SummaryZoomFrame objects:

Presentation pres = new Presentation();
try {
    //Adds a new slide to the presentation
    ISlide slide = pres.getSlides().addEmptySlide(pres.getSlides().get_Item(0).getLayoutSlide());
    slide.getBackground().getFillFormat().setFillType(FillType.Solid);
    slide.getBackground().getFillFormat().getSolidFillColor().setColor(Color.GRAY);
    slide.getBackground().setType(BackgroundType.OwnBackground);

    // Adds a new section to the presentation
    pres.getSections().addSection("Section 1", slide);

    //Adds a new slide to the presentation
    slide = pres.getSlides().addEmptySlide(pres.getSlides().get_Item(0).getLayoutSlide());
    slide.getBackground().getFillFormat().setFillType(FillType.Solid);
    slide.getBackground().getFillFormat().getSolidFillColor().setColor(Color.CYAN);
    slide.getBackground().setType(BackgroundType.OwnBackground);

    // Adds a new section to the presentation
    pres.getSections().addSection("Section 2", slide);

    //Adds a new slide to the presentation
    slide = pres.getSlides().addEmptySlide(pres.getSlides().get_Item(0).getLayoutSlide());
    slide.getBackground().getFillFormat().setFillType(FillType.Solid);
    slide.getBackground().getFillFormat().getSolidFillColor().setColor(Color.MAGENTA);
    slide.getBackground().setType(BackgroundType.OwnBackground);

    // Adds a new section to the presentation
    pres.getSections().addSection("Section 3", slide);

    //Adds a new slide to the presentation
    slide = pres.getSlides().addEmptySlide(pres.getSlides().get_Item(0).getLayoutSlide());
    slide.getBackground().getFillFormat().setFillType(FillType.Solid);
    slide.getBackground().getFillFormat().getSolidFillColor().setColor(Color.GREEN);
    slide.getBackground().setType(BackgroundType.OwnBackground);

    // Adds a new section to the presentation
    pres.getSections().addSection("Section 4", slide);

    // Adds a SectionZoomFrame object
    ISectionZoomFrame sectionZoomFrame = pres.getSlides().get_Item(0).getShapes().addSectionZoomFrame(20, 20, 300, 200, pres.getSections().get_Item(1));

    // Adds SummaryZoomFrame object
    ISummaryZoomFrame summaryZoomFrame = pres.getSlides().get_Item(0).getShapes().addSummaryZoomFrame(350, 50, 300, 200);

    // Saves the presentation
    pres.save("presentation.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Low Code API

We implemented a low code API that allows you to perform popular operations using only a few lines of code.

For example, with this single line of code, you can convert a PowerPoint to PDF:

Convert.autoByExtension("pres.pptx", "pres.pdf");

This is another example that demonstrates shows you how to output each portion of text in a presentation using as few lines of code as possible:

Presentation pres = new Presentation("pres.pptx");
try {
    ForEach.portion(pres, (portion, para, slide, index) -> System.out.println(portion.getText()));
} finally {
    if (pres != null) pres.dispose();
}

ObjectData, EmbeddedFileExtension, and EmbeddedFileData have been removed from the IOleObjectFrame interface

Obsolete properties ObjectData, EmbeddedFileExtension, and EmbeddedFileData have been removed from IOleObjectFrame interface. Use the setEmbeddedData method and getEmbeddedData methods from the IOleObjectFrame interface instead.