在 Python 中合并 PowerPoint 文件

在 Python 中使用 PowerPoint 自动化时,您可能需要合并多个演示文稿的内容。当多个人在最终需要合并的部分中创建演示文稿时,可能需要这样做。为了自动化这种合并,本文展示了如何在 Python 中以编程方式合并 PowerPoint PPTPPTX

用于合并 PowerPoint PPTX 的 Python 库

Aspose.Slides for Python via .NET 是一个强大的 Python 库,用于创建和操作演示文件。此外,它提供了灵活的方式来合并多个 PPT/PPTX 演示文稿。我们将利用这个库来合并本文中的演示文稿。您可以使用以下 pip 命令从 PyPI 安装它。

> pip install aspose.slides

在 Python 中合并 PowerPoint PPT

要合并 PPT 演示文稿,您需要将幻灯片从一个演示文稿克隆到另一个演示文稿。以下是在 Python 中合并两个 PPT 文件的步骤。

  • 创建一个 Presentation 类的对象来加载第一个演示文稿。
  • 创建另一个 Presentation 对象以加载第二个演示文稿。
  • 开始循环以遍历第二个演示文稿中的幻灯片。
  • 在每次迭代中,使用 Presentation.slides.addclone(ISlide) 方法将幻灯片合并到第一个演示文稿。
  • 最后,使用 Presentation.save(String, SaveFormat) 方法保存合并的演示文稿。

以下代码示例演示如何在 Python 中合并两个 PowerPoint PPTX 演示文稿。

import aspose.slides as slides

# 打开第一张PPT
with slides.Presentation("presentation1.pptx") as pres1:
  
    # 打开第二个PPT
    with slides.Presentation("Presentation2.pptx") as pres2:
        
        # 循环播放幻灯片
       for slide in pres2.slides:
          
            # 克隆幻灯片
            pres1.slides.add_clone(slide)
        
        # 保存合并的 PPT
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

第一次演讲

目标简报

第二次介绍

要合并的源PowerPoint演示文稿

合并的PPT

在 python 中合并 powerpoint ppt

Python:合并具有不同幻灯片大小的 PPT 演示文稿

您要合并的演示文稿可能使用不同大小的幻灯片。在这种情况下,最好在合并之前同步幻灯片的大小。让我们看看如何合并具有不同幻灯片大小的 PowerPoint PPT 文件。

  • 创建一个 Presentation 类的对象来加载第一个 PPT。
  • 创建另一个 Presentation 对象以加载第二个 PPT。
  • 使用 Presentation.slidesize.setsize(int, int, SlideSizeScaleType) 方法更改第二个 PPT 中幻灯片的大小。
  • 开始循环遍历第二个 PPT 中的幻灯片。
  • 在每次迭代中,使用 Presentation.slides.addclone(ISlide) 方法将幻灯片合并到第一个 PPT。
  • 最后,使用 Presentation.save(String, SaveFormat) 方法保存合并的 PPT。

以下代码示例显示了如何合并具有不同幻灯片大小的 PPT 演示文稿。

import aspose.slides as slides

# 打开第一张PPT
with slides.Presentation("Presentation1.pptx") as pres1:
  
    # 打开第二个PPT
    with slides.Presentation("Presentation2.pptx") as pres2:
        
        # 更改幻灯片大小
        pres2.slide_size.set_size(pres1.slide_size.size.width, pres1.slide_size.size.height, slides.SlideSizeScaleType.ENSURE_FIT)
        
        # 循环播放幻灯片
       for slide in pres2.slides:
          
            # 克隆幻灯片
            pres1.slides.add_clone(slide)
        
        # 保存合并的 PPT
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

将 PPT 幻灯片合并到 Python 中的特定部分

您还可以将 PPT 幻灯片合并到目标演示文稿的特定部分。为此,使用 Presentation.slides.addclone(ISlide, ISection) 方法。以下代码示例演示如何将第一个演示文稿中的幻灯片合并到第二个演示文稿的特定部分。

import aspose.slides as slides

# 打开第一张PPT
with slides.Presentation("Presentation1.pptx") as pres1:
  
    # 打开第二个PPT
    with slides.Presentation("Presentation2.pptx") as pres2:

        # 循环播放幻灯片
       for slide in pres2.slides:
          
            # 克隆幻灯片
            pres1.slides.add_clone(slide, pres1.sections[0])
        
        # 保存合并的 PPT
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

合并 PowerPoint PPT 时使用幻灯片母版

在前面的部分中,我们已经合并了保留第二个 PPT 的设计和模板的幻灯片。但是,我们可能需要为克隆的幻灯片使用第一个(或目标)演示文稿的布局。在这种情况下,在第二个参数定义幻灯片母版的地方使用重载方法 Presentation.slides.addclone(ISlide, Presentation.masters[int], allowclonemissinglayout = True)。

以下代码示例展示了如何在 Python 中使用所需的幻灯片母版合并 PPT 演示文稿。

import aspose.slides as slides

# 打开第一张PPT
with slides.Presentation("Presentation1.pptx") as pres1:
  
    # 打开第二个PPT
    with slides.Presentation("Presentation2.pptx") as pres2:

        # 循环播放幻灯片
       for slide in pres2.slides:
          
            # 克隆幻灯片
            pres1.slides.add_clone(slide, pres1.masters[0], allow_clone_missing_layout = True)
        
        # 保存合并的 PPT
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

合并演示文稿

python中的组合powerpoint ppt

用于合并 PowerPoint PPT 的 Python 库 - 获得免费许可证

您可以获得 免费临时许可证 以在 Python 中合并 PowerPoint 演示文稿,而不受评估限制。

结论

在本文中,您学习了如何在 Python 中合并 PowerPoint PPT 或 PPTX 演示文稿。我们已经介绍了在代码示例的帮助下合并多个 PowerPoint 演示文稿的各种场景。您可以简单地安装该库并在您的应用程序中使用提供的代码示例。如果您想了解更多关于 Aspose.Slides for Python 的信息,可以访问 文档。此外,您可以通过我们的 论坛 提问。

也可以看看

信息:Aspose 免费 在线 PowerPoint 合并 是演示合并过程作为服务的实时实现。