Aspose.Slides for Java 22.3 Release Notes

Key Summary Category Related Documentation
SLIDESNET-42621 Add support Bevel for charts Feature
SLIDESNET-42959 Introduce a flag to indicate if shape was created as text box or not Enhancement
SLIDESNET-43061 Throw a meaningful exception when saving an already Disposed Presentation Feature
SLIDESJAVA-38268 Use Aspose.Slides for Net 22.3 features Enhancement
SLIDESJAVA-38155 Fails to round values of data labels for Pie and Pyramid charts Bug
SLIDESJAVA-34568 3D Chart Content is not showing properly in generated PDF file Bug
SLIDESJAVA-38682 PPTX to PDF table issue Bug
SLIDESJAVA-33562 3D Cone Chart value axis format changed in generated PDF Bug
SLIDESJAVA-38635 Shapes with 3D styles improperly rendered in generated PDF Bug
SLIDESJAVA-38695 Exception when converting PPTX to PDF with comments and notes Bug
SLIDESJAVA-38714 3D effects on charts are lost in generated PDF Bug
SLIDESJAVA-38722 Loading PPTX file throws PptxReadException: Invalid SvgMsStyle Bug
SLIDESJAVA-38737 High CPU usage and very long PPTX to PDF conversion time Investigation
SLIDESJAVA-37758 White background appearing behind image in generated thumbnail Bug

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