Aspose.Slides for Java 22.3 Release Notes

KeySummaryCategoryRelated Documentation
SLIDESNET-42621Add support Bevel for chartsFeature
SLIDESNET-42959Introduce a flag to indicate if shape was created as text box or notEnhancement
SLIDESNET-43061Throw a meaningful exception when saving an already Disposed PresentationFeature
SLIDESJAVA-38268Use Aspose.Slides for Net 22.3 featuresEnhancement
SLIDESJAVA-38155Fails to round values of data labels for Pie and Pyramid chartsBug
SLIDESJAVA-345683D Chart Content is not showing properly in generated PDF fileBug
SLIDESJAVA-38682PPTX to PDF table issueBug
SLIDESJAVA-335623D Cone Chart value axis format changed in generated PDFBug
SLIDESJAVA-38635Shapes with 3D styles improperly rendered in generated PDFBug
SLIDESJAVA-38695Exception when converting PPTX to PDF with comments and notesBug
SLIDESJAVA-387143D effects on charts are lost in generated PDFBug
SLIDESJAVA-38722Loading PPTX file throws PptxReadException: Invalid SvgMsStyleBug
SLIDESJAVA-38737High CPU usage and very long PPTX to PDF conversion timeInvestigation
SLIDESJAVA-37758White background appearing behind image in generated thumbnailBug

Public API Changes

AutoShape.isTextBox method was added

AutoShape.isTextBox method was added to indicate if the shape was created as a text box or not. The screenshot below demonstrates two scenarios when a shape will be created as a text box and a regular shape:

Text box and shape

This code snippet demonstrates iteration over all Presentation shapes and out to console if the shape is a text box or not (if the shape is AutoShape).

Presentation pres = new Presentation("pres.pptx");
try {
    ForEach.shape(pres, (shape, slide, index) ->
        if (shape instanceof AutoShape)
            AutoShape autoShape = (AutoShape)shape;
            System.out.println(autoShape.isTextBox() ? "shape is text box" : "shape is text not box");
} finally {
    if (pres != null) pres.dispose();

Classes inherited from EffectEffectiveData removed from public API

The follwoing classes that inherited from EffectEffectiveData were removed from the public API:

  • AlphaBiLevelEffectiveData
  • AlphaModulateFixedEffectiveData
  • AlphaReplaceEffectiveData
  • BiLevelEffectiveData
  • BlurEffectiveData
  • ColorChangeEffectiveData
  • ColorReplaceEffectiveData
  • DuotoneEffectiveData
  • FillOverlayEffectiveData
  • GlowEffectiveData
  • HSLEffectiveData
  • InnerShadowEffectiveData
  • LuminanceEffectiveData
  • OuterShadowEffectiveData
  • PresetShadowEffectiveData
  • ReflectionEffectiveData
  • SoftEdgeEffectiveData
  • TintEffectiveData

All effective values are still available via corresponding public interfaces, e.g.:

Presentation pres = new Presentation("pres.pptx");
try {
    ForEach.portion(pres, (portion, para, slide, index) ->
        IPortionFormatEffectiveData effective = portion.getPortionFormat().getEffective();
} finally {
    if (pres != null) pres.dispose();