同时演示多个 PowerPoint 文档可能会很麻烦,并且往往会导致演示效果不如人意。不过,有一种方案可以简化这个过程,并确保 PowerPoint 演示文稿的无缝切换。通过合并多个 PowerPoint 文件,您就无需重复打开不同的文件,从而节省时间和精力。但是手动复制幻灯片费时又费力,好在 Python 提供了一种十分高效的解决方案。本文将介绍如何利用 Spire.Presentation for Python 通过 Python 程序毫不费力地合并 PowerPoint 演示文稿。
安装 Spire.Presentation for Python
此教程需要Spire.Presentation for Python 和 plum-dispatch v1.7.4。您可以通过以下 pip 命令将它们轻松安装到 Windows 系统中。
pip install Spire.Presentation
如果您不确定怎样安装,请参考这篇教程:怎样在 Windows 上安装 Spire.Presentation for Python
合并 PowerPoint 演示文稿并保留其设计
通过读取一个演示文稿的幻灯片并将它们添加到另一个演示文稿中,可以实现合并 PowerPoint 演示文稿。在添加到目标演示文稿的过程中,开发者可以使用 Presentation.Slides.AppendBySlide(ISlide) 方法来添加幻灯片,同时保留其原本的设计。详细的步骤如下:
- 创建两个 Presentation 的实例。
- 通过 Presentation.LoadFromFile() 方法加载两个 PowerPoint 演示文稿。
- 遍历第二个演示文稿的每一张幻灯片,利用 Presentation.Slides.AppendBySlide() 方法将它们添加到第一个演示文稿中,并保留其设计。
- 使用 Presentation.SaveToFile() 方法保存第一个演示文稿。
- Python
from spire.presentation.common import *
from spire.presentation import *
# 创建一个 Presentation 对象
pres1 = Presentation()
pres2 = Presentation()
# 加载演示文稿文档
pres1.LoadFromFile("Sample1.pptx")
pres2.LoadFromFile("Sample2.pptx")
#遍历第二个演示文稿的幻灯片
for slide in pres2.Slides:
#将每张幻灯片添加到第一个演示文稿并保留其原始设计
pres1.Slides.AppendBySlide(slide)
# 保存第一个演示文稿
pres1.SaveToFile("output/MergePresentations.pptx",FileFormat.Pptx2016)
pres1.Dispose()
pres2.Dispose()
合并 PowerPoint 演示文稿并使用同一种设计
开发者也可以使用 Presentation.Slides.AppendByMaster(slide Islide, master IMasterSlide) 方法将幻灯片插入到目标演示文稿,并更改其原始设计为目标演示文稿的设计。这样就可以合并演示文稿并确保设计的一致性。 下面是具体的操作步骤:
- 创建两个 Presentation 的实例。
- 通过 Presentation.LoadFromFile() 方法加载 PowerPoint 演示文稿。
- 遍历第二个演示文稿的幻灯片,利用 Presentation.Slides.AppendByMaster() 方法将它们添加到第一个演示文稿并改其设计为第一个演示文稿的设计。
- 使用 Presentation.SaveToFile() 方法保存第一个演示文稿。
- Python
from spire.presentation import *
from spire.presentation.common import *
# 创建两个 Presentation 的实例
pres1 = Presentation()
pres2 = Presentation()
# 加载演示文稿文件
pres1.LoadFromFile("Sample1.pptx")
pres2.LoadFromFile("Sample2.pptx")
# 遍历第二个演示文稿的幻灯片
for slide in pres2.Slides:
# 将每一张幻灯片添加到第一个演示文稿
pres1.Slides.AppendByMaster(slide, pres1.Masters[0])
# 保存第一个演示文稿
pres1.SaveToFile("output/MergePresentationsDesign1.pptx", FileFormat.Pptx2016)
pres1.Dispose()
pres2.Dispose()
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。