在 PowerPoint C# 中克隆幻灯片

在某些情况下,您可能需要克隆 PowerPoint 演示文稿中的幻灯片。克隆过程在不更改原始幻灯片的情况下将幻灯片复制到另一个演示文稿中或另一个演示文稿中。在本文中,您将了解如何在 PowerPoint 演示文稿中自动进行幻灯片克隆。特别是,本文将介绍如何使用 C# 在 PowerPoint 演示文稿中或从一个演示文稿克隆到另一个演示文稿中的幻灯片。

用于在 PowerPoint 演示文稿中克隆幻灯片的 .NET API

为了在 PPTX 或 PPT 演示文稿中克隆幻灯片,我们将使用 Aspose.Slides for .NET。它是一个演示文稿操作 API,可让您创建、修改和转换 PowerPoint 和 OpenOffice 演示文稿。您可以 下载 API 或使用 NuGet 安装它。

PM> Install-Package Aspose.Slides.NET

用 C# 在 PowerPoint 演示文稿中克隆幻灯片

您可以在指定位置或 PowerPoint 演示文稿结尾处克隆幻灯片。以下部分通过代码示例演示了上述每个场景。

在演示结束时克隆幻灯片

以下是使用 C# 在 PowerPoint 演示文稿结尾处克隆幻灯片的步骤。

  1. 首先,使用 Presentation 类加载 PowerPoint 演示文稿。
  2. 使用 Presentation.Slides 获取幻灯片集合的引用到 ISlideCollection 对象。
  3. 通过将要克隆的幻灯片指定为参数,使用 ISlideCollection.AddClone(ISlide) 方法克隆所需的幻灯片。
  4. 最后,使用 Presentation.Save(String, SaveFormat) 方法保存演示文稿。

下面的代码示例演示如何在 PowerPoint 演示文稿的末尾克隆幻灯片。

// 加载演示文件
using (Presentation pres = new Presentation("input.pptx"))
{
    // 将所需幻灯片克隆到同一演示文稿中幻灯片集合的末尾
    ISlideCollection slds = pres.Slides;
    slds.AddClone(pres.Slides[0]);

    // 保存演示文稿
    pres.Save("output.pptx", SaveFormat.Pptx);

}

将幻灯片克隆到演示文稿中的特定位置

以下是使用 C# 在 PowerPoint 演示文稿中的特定位置克隆幻灯片的步骤。

  1. 使用 Presentation 类加载 PowerPoint 演示文稿。
  2. 使用 Presentation.Slides 将幻灯片集合引用到 ISlideCollection 对象中。
  3. 通过指定目标索引和要克隆的幻灯片作为参数,使用 ISlideCollection.InsertClone(Int32, ISlide) 方法克隆所需的幻灯片。
  4. 使用 Presentation.Save(String, SaveFormat) 方法保存演示文稿。

以下代码示例演示如何在 PowerPoint 演示文稿中的特定位置克隆幻灯片。

// 加载演示文件
using (Presentation pres = new Presentation("input.pptx"))
{
    // 访问同一演示文稿中的幻灯片集合
    ISlideCollection slds = pres.Slides;
    
    // 将所需幻灯片克隆到同一演示文稿中的指定索引
    slds.InsertClone(2, pres.Slides[1]);

    // 保存演示文稿
    pres.Save("output.pptx", SaveFormat.Pptx);

}

使用 C# 将幻灯片克隆到另一个演示文稿中

在本节中,您将学习如何将幻灯片从一个演示文稿克隆到另一个演示文稿。以下小节将介绍在目标演示文稿的末尾或特定位置克隆幻灯片。

在另一个演示文稿结束时克隆幻灯片

以下是使用 C# 在另一个演示文稿末尾克隆幻灯片的步骤。

  1. 使用 Presentation 类加载源 PowerPoint 演示文稿。
  2. 使用 Presentation 类加载目标 PowerPoint 演示文稿。
  3. 获取从目标演示文稿到 ISlideCollection 对象的幻灯片集合的引用。
  4. 通过将要克隆的幻灯片指定为参数,使用 ISlideCollection.AddClone(ISlide) 方法克隆所需的幻灯片。
  5. 使用 Presentation.Save(String, SaveFormat) 方法保存目标演示文稿。

以下代码示例演示如何将幻灯片从一个演示文稿克隆到另一个演示文稿。

// 加载源演示文件
using (Presentation srcPres = new Presentation("source.pptx"))
{
    // 加载目标演示文稿(要克隆幻灯片的位置)
    using (Presentation destPres = new Presentation("destination.pptx"))
    {
        // 将所需幻灯片从源演示文稿克隆到目标演示文稿中幻灯片集合的末尾
        ISlideCollection slds = destPres.Slides;
        slds.AddClone(srcPres.Slides[0]);

        // 保存演示文稿
        destPres.Save("destination_out.pptx", SaveFormat.Pptx);
    }
}

将幻灯片克隆到另一个演示文稿中的特定位置

以下是使用 C# 在另一个演示文稿中的特定位置克隆幻灯片的步骤。

  1. 使用 Presentation 类加载源 PowerPoint 演示文稿。
  2. 使用 Presentation 类加载目标 PowerPoint 演示文稿。
  3. 获取从目标演示文稿到 ISlideCollection 对象的幻灯片集合的引用。
  4. 通过指定目标索引和要克隆的幻灯片作为参数,使用 ISlideCollection.InsertClone(Int32, ISlide) 方法克隆所需的幻灯片。
  5. 使用 Presentation.Save(String, SaveFormat) 方法保存目标演示文稿。

以下代码示例演示如何将幻灯片克隆到另一个 PowerPoint 演示文稿中。

// 加载源演示文件
using (Presentation srcPres = new Presentation("source.pptx"))
{
    // 加载目标演示文稿(要克隆幻灯片的位置)
    using (Presentation destPres = new Presentation("destination.pptx"))
    {
        // 将所需幻灯片从源演示文稿克隆到目标演示文稿中的指定位置
        ISlideCollection slds = destPres.Slides;
        slds.InsertClone(2, srcPres.Slides[0]);

        // 保存演示文稿
        destPres.Save("destination_out.pptx", SaveFormat.Pptx);
    }
}

获取免费 API 许可证

您可以通过请求 临时许可证 来使用 Aspose.Slides for .NET,而不受评估限制。

结论

在本文中,您学习了如何使用 C# 克隆 PowerPoint 演示文稿中的幻灯片。该文章明确涵盖了在演示文稿中或从一个演示文稿到另一个演示文稿的幻灯片克隆。此外,您可以访问 文档 来探索 API 的其他功能。此外,您可以随时通过我们的 论坛 告诉我们您的疑问。

也可以看看

提示:您可能需要查看 Aspose FREE PowerPoint Splitter 用于拆分演示文稿中的幻灯片并将它们保存为单独的文件。