Browse our Products
Aspose.Slides for C++ 23.3 Release Notes
This page contains release notes for Aspose.Slides for C++ 23.3
Supported Platforms
- Aspose.Slides for C++ for Windows x64/x86 (Microsoft Visual Studio 2017 or later).
- Aspose.Slides for C++ for Linux (Clang 3.9 or later, GCC 6.1 or later).
- Aspose.Slides for C++ for macOS (Xcode 13.4 or later).
New Features and Enhancements
Key | Summary | Category | Related Documentation |
---|---|---|---|
SLIDESNET-43760 | Managing Trim Video settings | Feature | https://docs.aspose.com/slides/net/convert-powerpoint-to-video/ |
SLIDESNET-43659 | Animation timing settings: Rewind when done playing | Feature | https://docs.aspose.com/slides/net/shape-animation/#change-animation-effect-timing-properties |
SLIDESNET-43672 | EMF images are blurred when converting PPTX to PDF | Enhancement | https://docs.aspose.com/slides/net/convert-powerpoint-to-pdf/ |
SLIDESNET-43634 | Add support for Audio/Video plugin in ODP format | Feature | https://docs.aspose.com/slides/net/convert-openoffice-odp/ |
Other Improvements and Changes
Key | Summary | Category | Related Documentation |
---|---|---|---|
SLIDESCPP-3611 | Use Aspose.Slides for .NET 23.3 features | Enhancement | https://docs.aspose.com/slides/net/aspose-slides-for-net-23-3-release-notes/ |
SLIDESCPP-3578 | Improve usability of Aspose.Slides for C++ API for setter expressions | Enhancement |
Public API Changes
New methods have been added to various interfaces and classes to improve API usability.
These methods have been added to reduce the complexity of invocation chains.
It should be noted that the old way can still be used and is fully equivalent to the new way.
List of methods:
Class name | Ordinary syntax | New improved syntax |
---|---|---|
Aspose::Slides::Animation::IEffect | get_Behaviors()->idx_set(index, value) | set_Behavior(index, value) |
Aspose::Slides::Animation::Effect | get_Behaviors()->idx_set(index, value) | set_Behavior(index, value) |
Aspose::Slides::ICustomData | get_Tags()->idx_set(name, value) | set_Tag(name, value) |
Aspose::Slides::CustomData | get_Tags()->idx_set(name, value) | set_Tag(name, value) |
Aspose::Slides::IControl | get_Properties()->idx_set(name, value) | set_Property(name, value) |
Aspose::Slides::Control | get_Properties()->idx_set(name, value) | set_Property(name, value) |
Aspose::Slides::IColorFormat | get_ColorTransform()->idx_set(index, value) | set_ColorOperation(index, value) |
Aspose::Slides::ColorFormat | get_ColorTransform()->idx_set(index, value) | set_ColorOperation(index, value) |
Aspose::Slides::IPresentation | get_DocumentProperties()->idx_set(name, value) | set_DocumentProperty(name, value) |
Aspose::Slides::Presentation | get_DocumentProperties()->idx_set(name, value) | set_DocumentProperty(name, value) |
Example:
This code snippet:
presentation->get_Tags()->idx_set(u"Content Creator", u"My Name");
Can be rewritten as follows:
presentation->set_Tag(u"Content Creator", u"My Name");
Animation timing settings
The ITiming::get_Rewind() and ITiming::set_Rewind() methods have been added to specify whether an effect will rewind after playing.
Example:
System::SharedPtr<Presentation> presentation = System::MakeObject<Presentation>(u"demo.pptx");
// Gets the effects sequence for the first slide
System::SharedPtr<ISequence> effectsSequence = presentation->get_Slide(0)->get_Timeline()->get_MainSequence();
// Gets the first effect of the main sequence.
System::SharedPtr<IEffect> effect = effectsSequence->idx_get(0);
// Turns the effect Timing/Rewind on.
effect->get_Timing()->set_Rewind(true);}
Trim Video Settings
The IVideoFrame::get_TrimFromStart(), IVideoFrame::set_TrimFromStart(), IVideoFrame::get_TrimFromEnd(), and IVideoFrame::set_TrimFromEnd() methods have been added to manage Trim Video settings.
Example:
System::SharedPtr<Presentation> pres = System::MakeObject<Presentation>();
System::SharedPtr<ISlide> slide = pres->get_Slide(0);
System::SharedPtr<IVideo> video = pres->get_Videos()->AddVideo(System::IO::File::ReadAllBytes(u"video.mp4"));
System::SharedPtr<IVideoFrame> videoFrame = slide->get_Shapes()->AddVideoFrame(0.0f, 0.0f, 100.0f, 100.0f, video);
// sets the trimming start time to 1sec
videoFrame->set_TrimFromStart(1000.f);
// sets the triming end time to 2sec
videoFrame->set_TrimFromEnd(2000.f);
IChartDataPoint::get_Index() method has been added
To allow you determine what parent’s children collection this data point applies to, the IChartDataPoint::get_Index() property has been added.
Example:
System::SharedPtr<Presentation> presentation = System::MakeObject<Presentation>(u"pres.pptx");
System::SharedPtr<Chart> chart = System::ExplicitCast<Aspose::Slides::Charts::Chart>(presentation->get_Slide(0)->get_Shape(0));
System::SharedPtr<IChartDataPointCollection> dataPoints = chart->get_ChartData()->get_ChartSeries(0)->get_DataPoints();
for (auto&& dataPoint : dataPoints)
{
System::Console::WriteLine(u"Point with index {0} is applied to {1}", dataPoint->get_Index(), dataPoint->get_Value());
}