从演示文稿中删除幻灯片

如果幻灯片(或其内容)变得多余,您可以将其删除。Aspose.Slides 提供了 Presentation 类,该类封装了 ISlideCollection,它是演示文稿中所有幻灯片的存储库。使用已知的 ISlide 对象的指针(引用或索引),您可以指定要移除的幻灯片。

通过引用删除幻灯片

  1. 创建一个 Presentation 类的实例。
  2. 通过其 ID 或索引获取您要删除的幻灯片的引用。
  3. 从演示文稿中删除引用的幻灯片。
  4. 保存修改后的演示文稿。

以下 PHP 代码展示了如何通过其引用删除幻灯片:

  # 实例化一个表示演示文稿文件的 Presentation 对象
  $pres = new Presentation("demo.pptx");
  try {
    # 通过在幻灯片集合中的索引访问幻灯片
    $slide = $pres->getSlides()->get_Item(0);
    # 通过引用删除幻灯片
    $pres->getSlides()->remove($slide);
    # 保存修改后的演示文稿
    $pres->save("modified.pptx", SaveFormat::Pptx);
  } finally {
    $pres->dispose();
  }

通过索引删除幻灯片

  1. 创建一个 Presentation 类的实例。
  2. 通过其索引位置从演示文稿中删除幻灯片。
  3. 保存修改后的演示文稿。

以下 PHP 代码展示了如何通过其索引删除幻灯片:

  # 实例化一个表示演示文稿文件的 Presentation 对象
  $pres = new Presentation("demo.pptx");
  try {
    # 通过幻灯片索引删除幻灯片
    $pres->getSlides()->removeAt(0);
    # 保存修改后的演示文稿
    $pres->save("modified.pptx", SaveFormat::Pptx);
  } finally {
    $pres->dispose();
  }

删除未使用的布局幻灯片

Aspose.Slides 提供了 removeUnusedLayoutSlides 方法(来自 Compress 类),允许您删除不需要和未使用的布局幻灯片。以下 PHP 代码展示了如何从 PowerPoint 演示文稿中删除布局幻灯片:

  $pres = new Presentation("pres.pptx");
  try {
    Compress->removeUnusedLayoutSlides($pres);
    $pres->save("pres-out.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

删除未使用的母版幻灯片

Aspose.Slides 提供了 removeUnusedMasterSlides 方法(来自 Compress 类),允许您删除不需要和未使用的母版幻灯片。以下 PHP 代码展示了如何从 PowerPoint 演示文稿中删除母版幻灯片:

  $pres = new Presentation("pres.pptx");
  try {
    Compress->removeUnusedMasterSlides($pres);
    $pres->save("pres-out.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }