Aspose.Slides for Java 21.6 Release Notes
Key | Summary | Category | Related Documentation |
---|---|---|---|
SLIDESNET-42514 | Support of Cylinder column shape for 3-D Column and 3-D Bar Charts | Feature | https://docs.aspose.com/slides/net/powerpoint-charts/ |
SLIDESNET-30675 | Support of Presentation to XAML export | Feature | |
SLIDESNET-42447 | Support of 3-D Bar Chart | Feature | https://docs.aspose.com/slides/net/powerpoint-charts/ |
SLIDESNET-37955 | Support of 3D Transforms for thumbnails | Feature | https://docs.aspose.com/slides/net/3d-presentation/ |
SLIDESJAVA-38232 | Use Aspose.Slides for Net 21.6 features | Enhancement | |
SLIDESJAVA-38531 | ArgumentException: Unable to find any font for: GenericFontFamilies.Serif | Investigation | https://docs.aspose.com/slides/java/custom-font/ |
SLIDESJAVA-33354 | Improper rendering of 3d rotated shapes | Bug | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-jpg/ |
SLIDESJAVA-32683 | Unresolved Qumu issues | Bug | |
SLIDESJAVA-34045 | Text shadow effects are missing in generated thumbnail | Bug | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-jpg/ |
SLIDESJAVA-34792 | Blur shadow effects observed in thumbnail | Bug | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-jpg/ |
SLIDESJAVA-38529 | PPTX update chart values produces bad output file | Bug | https://docs.aspose.com/slides/java/chart-workbook/ |
SLIDESJAVA-36211 | Incorrect font size in notes page | Bug | https://docs.aspose.com/slides/java/shape-effective-properties/ |
SLIDESJAVA-34569 | Chart Borders are missing in generated PDF file | Bug | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-pdf/ |
SLIDESJAVA-32322 | Wrong shape direction on thumbnail | Bug | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-jpg/ |
SLIDESJAVA-38549 | Presentation.save method throws KeyNotFoundException | Investigation | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-pdf/ |
SLIDESJAVA-38546 | Presentation to PDF conversion fails | Investigation | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-pdf/ |
SLIDESJAVA-38077 | Replacing a MasterSlide with Gradient Background incurs “InvalidOperationException: Color is not resolved yet” | Bug | https://docs.aspose.com/slides/java/clone-slides/ |
SLIDESJAVA-33804 | The image angle of rotation is discarded in generated PDF | Bug | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-pdf/ |
SLIDESJAVA-33240 | Shape Thumbnails for PPTX with transparet background | Feature | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-jpg/ |
SLIDESJAVA-33963 | SmartArt is improperly rendered in generated PDF | Bug | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-pdf/ |
SLIDESJAVA-36381 | 3D shape effects are not rendered in PDF/PNG | Feature | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-pdf/ |
SLIDESJAVA-36382 | Glow Effects are not rendered in PDF/PNG | Feature | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-pdf/ |
SLIDESJAVA-36383 | Rotation Effects are not rendered in PDF/PNG | Feature | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-pdf/ |
SLIDESJAVA-36384 | Reflection Effects are not rendered in PDF/PNG | Feature | https://docs.aspose.com/slides/java/convert-powerpoint-ppt-and-pptx-to-pdf/ |
SLIDESJAVA-38532 | Error happens when convert PPT to PPTX | Investigation | https://docs.aspose.com/slides/java/convert-ppt-to-pptx/ |
Public API Changes
Support of Presentation to XAML export
To support Presentation export to XAML, we added new API members.
IXamlOptions interface and XamlOptions class. IXamlOptions definition:
/**
* <p>
* Options that control how a XAML document is saved.
* </p>
*/
public interface IXamlOptions extends ISaveOptions
{
/**
<p>
Determines whether hidden slides will be exported.
</p>
*/
public boolean getExportHiddenSlides();
/**
<p>
Determines whether hidden slides will be exported.
</p>
*/
public void setExportHiddenSlides(boolean value);
/**
<p>
Represents an implementation of IOutputSaver interface.
</p>
*/
public IXamlOutputSaver getOutputSaver();
/**
<p>
Represents an implementation of IOutputSaver interface.
</p>
*/
public void setOutputSaver(IXamlOutputSaver value);
}
For Presentation export to XAML, a new Save method overload got added to the Presentation class:
/**
* <p>
* Saves all slides of a presentation to a set of files representing XAML markup.
* </p>
*/
public final void save(IXamlOptions options)
This code sample demonstrates the exporting of a Presentation to a set of XAML files:
Presentation pres = new Presentation("pres.pptx");
try {
XamlOptions xamlOptions = new XamlOptions();
xamlOptions.setExportHiddenSlides(true);
pres.save(xamlOptions);
} finally {
if (pres != null) pres.dispose();
}
The XAML files get saved in a newly created folder—“pres”.
The IXamlOutputSaver interface allows you to define your own output-saving service. IXamlOutputSaver definition:
/**
* <p>
* Represents an output saver implementation for transfer data to the external storage.
* </p>
*/
public interface IXamlOutputSaver
{
/**
* <p>
* Saves a bytes array to a destination location.
* </p>
* @param path The destination path.
* @param data A binary data for saving to a destination location.
*/
public void save(String path, byte[] data);
}
IEffect.getTargetShape() method has been added
The IEffect.getTargetShape() method has been added. It returns the shape affected by the effect.
Method declaration:
/**
* <p>
* Returns target shape for effect.
* Read-only {@link IShape}.
* </p>
*/
public IShape getTargetShape();
This code sample demonstrates the output of information for all animated shapes in the main sequence for all slides in a presentation.
Presentation pres = new Presentation("SomePresentation.pptx");
try {
for (ISlide slide : pres.getSlides())
for (IEffect effect : slide.getTimeline().getMainSequence())
System.out.println(effect.getType() + " animation effect is set to shape#" + effect.getTargetShape().getUniqueId() + " on slide#" + slide.getSlideNumber());
} finally {
if (pres != null) pres.dispose();
}