最常见和广泛使用的演示文稿文件格式是 PPT、PPTX 和 ODP。著名的 Microsoft PowerPoint, OpenOffice Impress 和 Apple Keynote 支持这些格式,我们通常使用这些格式来制作精彩的演示文稿。作为开发人员,我们可以通过编程方式编辑应用程序中的演示文稿。在本文中,我们将讨论如何使用 .NET API 进行演示文稿编辑,在 C# 中编辑 PPT/PPTX 演示文稿。
以下是本文简要讨论的主题:
用于演示文稿编辑和自动化的 .NET API
现在,我们将在下面的 C# 示例中使用 GroupDocs.Editor for .NET。它是演示文稿编辑 API,允许开发人员加载、编辑和保存其他格式(如 PPT、PPTX、PDF)编辑的演示文稿。除了演示文稿格式之外,API 还支持编辑文字处理文档、电子表格、HTML、XML、JSON、TXT、TSV 和 CSV 格式。
从 下载部分 下载 DLL 或 MSI 安装程序,或通过 NuGet 在您的 .NET 应用程序中安装 API。
PM> Install-Package GroupDocs.Editor
在 C# 中编辑 PPTX/PPTX 演示文稿
设置 API 后,您就可以快速开始编辑演示文稿幻灯片。以下步骤将让您编辑 PPT/PPTX 和其他支持格式的演示文稿。
- 加载演示文稿。
- 使用可用选项进行编辑。
- 保存编辑后的演示文稿。
加载 PPT/PPTX 演示文稿
首先,如果演示文稿受到保护,请通过提供演示文稿文件路径和密码来加载演示文稿。
// Load Presentation
using (FileStream fs = File.OpenRead("path/presentation.pptx"))
{
// Load Presentation
Options.PresentationLoadOptions loadOptions = new PresentationLoadOptions();
loadOptions.Password = "P@$$w0Rd";
}
编辑 PPT/PPTX 演示幻灯片
加载后,您可以根据需要编辑加载的演示文稿。在这里,我使用下面的 C# 代码将 PPTX 演示文稿中所有出现的单词“文档”替换为“演示文稿”。
// Edit Presentation
using (Editor editor = new Editor(delegate { return fs; }, delegate { return loadOptions; }))
{
Options.PresentationEditOptions editOptions = new PresentationEditOptions();
editOptions.SlideNumber = 0; // 1st slide
editOptions.ShowHiddenSlides = true;
using (EditableDocument beforeEdit = editor.Edit(editOptions))
{
string originalContent = beforeEdit.GetContent();
List<IHtmlResource> allResources = beforeEdit.AllResources;
string editedContent = originalContent.Replace("documents", "presentation");
}
}
使用选项保存编辑后的 PowerPoint 演示文稿
最后,在保存编辑好的演示内容的同时,还可以进一步设置各种选项。这些选项包括:设置密码、输出格式设置。我在下面提到的代码中设置上述选项,并将编辑后的演示文稿保存为受密码保护的 PPTX 文件。
// Save Presentation
using (EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResources))
{
Options.PresentationSaveOptions saveOptions = new PresentationSaveOptions(PresentationFormats.Pptm);
saveOptions.Password = "new_pa$$word";
using (FileStream outputStream = File.Create("path/edited-presentation.pptx"))
{
editor.Save(afterEdit, outputStream, saveOptions);
}
}
完整代码
为了方便起见,这里是上面解释的完整 C# 示例,它编辑 PowerPoint 演示文稿,然后将其保存为 PPTX 格式。
// 使用 GroupDocs 演示文稿编辑和自动化 API 在 C# 中编辑 PPT/PPTX 演示文稿
using (FileStream fs = File.OpenRead("path/presentation.pptx"))
{
// 加载演示
Options.PresentationLoadOptions loadOptions = new PresentationLoadOptions();
loadOptions.Password = "P@$$w0Rd";
// 编辑演示文稿
using (Editor editor = new Editor(delegate { return fs; }, delegate { return loadOptions; }))
{
Options.PresentationEditOptions editOptions = new PresentationEditOptions();
editOptions.SlideNumber = 0; // 1st slide
editOptions.ShowHiddenSlides = true;
using (EditableDocument beforeEdit = editor.Edit(editOptions))
{
string originalContent = beforeEdit.GetContent();
List<IHtmlResource> allResources = beforeEdit.AllResources;
string editedContent = originalContent.Replace("documents", "presentation");
// 保存演示文稿
using (EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResources))
{
Options.PresentationSaveOptions saveOptions = new PresentationSaveOptions(PresentationFormats.Pptm);
saveOptions.Password = "new_pa$$word";
using (FileStream outputStream = File.Create("path/edited-presentation.pptx"))
{
editor.Save(afterEdit, outputStream, saveOptions);
}
}
}
}
}
以下是输出演示,其中所有出现的内容都使用上述代码替换。
结论
最后,我们讨论了使用 .NET 应用程序的演示文稿编辑 API 在 C# 中编辑演示文稿幻灯片。您可以将 API 与所见即所得编辑器结合使用,对演示文稿进行可视化编辑。之后,您可以继续构建自己的演示文稿编辑器。同样,您还可以将编辑功能集成到 .NET 应用程序中。
有关更多详细信息、选项和示例,您可以访问 文档 和 GitHub 存储库。如需进一步查询,请联系论坛上的支持人员。