动画是 Microsoft PowerPoint 提供的一项功能,可让演示文稿更具吸引力和趣味性。它还可以用来突出幻灯片上的不同元素,以吸引观众的注意力。您可以为幻灯片上的文本、形状和其他元素添加动画。在本文中,您将学习如何使用 C++ 将动画应用于 PowerPoint 文件中的文本。

用于将动画应用于 PowerPoint 文件中的文本的 C++ API

我们将使用 Aspose.Slides for C++ API 在 PowerPoint 文件中应用文本动画。它是一个强大且功能丰富的 API,用于创建、读取和修改 PowerPoint PPTX/PPT 文件,无需安装 Microsoft PowerPoint。您可以通过 NuGet 安装 API,也可以直接从 下载 部分下载。

PM> Install-Package Aspose.Slides.Cpp

使用 C++ 将动画应用于 PowerPoint 文件中的文本

Aspose.Slides for C++ 支持超过 150 多种动画效果,如 Expand、Fade、Blink、Zoom 等。此外,它还提供了特定的动画效果,如 OLEObjectShow 和 OLEObjectOpen。您可以在 EffectType 枚举中查看支持的动画效果的完整列表。

要将动画应用于 PowerPoint 演示文稿中的文本,请按照以下步骤操作。

以下示例代码展示了如何使用 C++ 将动画效果应用于 PowerPoint 演示文稿中的文本。

// 文件路径
const String sourceFilePath = u"SourceDirectory\\Slides\\SamplePresentation2.pptx";
const String outputFilePath = u"OutputDirectory\\ApplyTextAnimation.pptx";

// 加载演示文件
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// 访问形状
SharedPtr<IAutoShape> autoShape = System::DynamicCast_noexcept<Aspose::Slides::IAutoShape>(presentation->get_Slides()->idx_get(0)->get_Shapes()->idx_get(0));

// 访问段落
auto paragraph = autoShape->get_TextFrame()->get_Paragraphs()->idx_get(0);

// 添加效果
auto effect = presentation->get_Slides()->idx_get(0)->get_Timeline()->get_MainSequence()->AddEffect(paragraph, EffectType::Fly, EffectSubtype::Left, EffectTriggerType::OnClick);

// 保存演示文件
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

使用 C++ 从 PowerPoint 文件中获取动画效果

您可以按照以下步骤检索已应用于文本的动画效果。

以下示例代码展示了如何使用 C++ 从 PowerPoint 演示文稿中的文本获取动画效果。

// 文件路径
const String sourceFilePath = u"OutputDirectory\\ApplyTextAnimation.pptx";

// 加载演示文件
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// 获取序列
auto sequence = presentation->get_Slides()->idx_get(0)->get_Timeline()->get_MainSequence();

// 访问形状
SharedPtr<IAutoShape> autoShape = System::DynamicCast_noexcept<Aspose::Slides::IAutoShape>(presentation->get_Slides()->idx_get(0)->get_Shapes()->idx_get(0));

// 循环遍历段落
for (SharedPtr<IParagraph> paragraph : autoShape->get_TextFrame()->get_Paragraphs())
{
	// 获取效果
	auto effects = sequence->GetEffectsByParagraph(paragraph);
	if (effects->get_Length() > 0)
	{
		// 打印到控制台
		Console::WriteLine(String::Format(u"Paragraph {0} has {1} effect.", paragraph->get_Text(), effects->idx_get(0)->get_Type()));
	}
}

获得免费许可证

为了在没有评估限制的情况下试用 API,您可以申请 免费的临时许可证

结论

在本文中,您学习了如何使用 C++ 为 PowerPoint 演示文稿中的文本添加动画效果。此外,您还了解了如何从 PowerPoint 演示文稿中的文本中检索动画效果。 Aspose.Slides for C++ 提供了许多附加功能,您可以通过访问 官方文档 来详细了解这些功能。如有任何问题,请随时通过我们的 免费支持论坛 与我们联系。

也可以看看