合并演示文稿

演示文稿合并

当您将一个演示文稿合并到另一个时,您实际上是在将它们的幻灯片组合在一个演示文稿中以获得一个文件。

可以合并的内容

使用 Aspose.Slides,您可以合并

  • 整个演示文稿。来自演示文稿的所有幻灯片最终会合并到一个演示文稿中
  • 特定的幻灯片。选择的幻灯片最终会合并到一个演示文稿中
  • 一种格式的演示文稿(PPT 到 PPT,PPTX 到 PPTX 等)和相互之间的不同格式(PPT 到 PPTX,PPTX 到 ODP 等)。

合并选项

您可以应用选项以确定

  • 输出演示文稿中的每个幻灯片是否保留唯一样式
  • 是否为输出演示文稿中的所有幻灯片使用特定样式。

要合并演示文稿,Aspose.Slides 提供了 add_clone 方法(来自 ISlideCollection 接口)。有几种 add_clone 方法的实现定义了演示文稿合并过程的参数。每个 Presentation 对象都有一个 slides 集合,因此您可以从要合并幻灯片的演示文稿调用 add_clone 方法。

add_clone 方法返回一个 ISlide 对象,它是源幻灯片的克隆。输出演示文稿中的幻灯片只是源幻灯片的副本。因此,您可以对生成的幻灯片进行更改(例如,应用样式或格式选项或布局),而不必担心源演示文稿受到影响。

合并演示文稿

Aspose.Slides 提供了 AddClone (ISlide) 方法,允许您在幻灯片保留其布局和样式的同时合并幻灯片(默认参数)。

以下 Python 代码向您显示如何合并演示文稿:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres1:
    with slides.Presentation("Presentation1.pptx") as pres2:
        for slide in pres2.slides:
            pres1.slides.add_clone(slide)
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

使用幻灯片母版合并演示文稿

Aspose.Slides 提供了 add_clone (ISlide, IMasterSlide, Boolean) 方法,允许您在应用幻灯片母版演示文稿模板的同时合并幻灯片。这样,如果需要,您可以更改输出演示文稿中幻灯片的样式。

这段 Python 代码演示了所述操作:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres1:
    with slides.Presentation("Presentation1.pptx") as pres2:
        for slide in pres2.slides:
            pres1.slides.add_clone(slide, pres1.masters[0], allow_clone_missing_layout = True)
        pres1.save("combined_with_master.pptx", slides.export.SaveFormat.PPTX) 

如果您希望输出演示文稿中的幻灯片具有不同的幻灯片布局,则在合并时请使用 add_clone (ISlide, ILayoutSlide) 方法。

合并特定幻灯片

以下 Python 代码向您显示如何选择和组合来自不同演示文稿的特定幻灯片以获得一个输出演示文稿:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres1:
    with slides.Presentation("Presentation1.pptx") as pres2:
        for slide in pres2.slides:
            pres1.slides.add_clone(slide, pres1.layout_slides[0])
        pres1.save("combined_with_layout.pptx", slides.export.SaveFormat.PPTX) 

使用幻灯片布局合并演示文稿

以下 Python 代码向您显示如何在合并演示文稿时为其应用您的首选幻灯片布局以获得一个输出演示文稿:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres1:
    with slides.Presentation("Presentation1.pptx") as pres2:
        for slide in pres2.slides:
            pres1.slides.add_clone(slide, pres1.layout_slides[0])
        pres1.save("combined_with_layout.pptx", slides.export.SaveFormat.PPTX) 

合并不同幻灯片大小的演示文稿

要合并 2 个不同幻灯片大小的演示文稿,您必须调整其中一个演示文稿的大小以使其大小与另一个演示文稿匹配。

以下示例代码演示了所述操作:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres1:
    with slides.Presentation("Presentation1.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)
        pres1.save("combined_size.pptx", slides.export.SaveFormat.PPTX) 

将幻灯片合并到演示文稿部分

以下 Python 代码向您显示如何将特定幻灯片合并到演示文稿中的某个部分:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres1:
    with slides.Presentation("Presentation1.pptx") as pres2:
        for slide in pres2.slides:
            pres1.slides.add_clone(slide, pres1.sections[0])
        pres1.save("combined_sections.pptx", slides.export.SaveFormat.PPTX) 

幻灯片将添加到该部分的末尾。