在 PHP 中向演示文稿添加幻灯片
Contents
[
Hide
]
向演示文稿添加幻灯片
在讨论向演示文稿文件添加幻灯片之前,让我们先了解一些关于幻灯片的事实。每个 PowerPoint 演示文稿文件都包含 Master / Layout 幻灯片和其他 Normal 幻灯片。这意味着一个演示文稿文件至少包含一张或多张幻灯片。需要注意的是,不含幻灯片的演示文稿文件不受 Aspose.Slides for PHP via Java 支持。每张幻灯片都有唯一的 Id,所有 Normal 幻灯片按照零基索引的顺序排列。
Aspose.Slides for PHP via Java 允许开发者向演示文稿中添加空白幻灯片。要在演示文稿中添加空白幻灯片,请按照以下步骤操作:
- 创建一个 Presentation 类的实例。
- 使用 Presentation 对象公开的 getSlides 方法(内容 Slide 对象的集合),获取 SlideCollection 对象。
- 通过调用 SlideCollection 对象公开的 addEmptySlide 方法,在内容幻灯片集合的末尾添加一张空白幻灯片。
- 对新添加的空白幻灯片进行相应操作。
- 最后,使用 Presentation 对象写入演示文稿文件。
# 实例化表示演示文稿文件的 Presentation 类
$pres = new Presentation();
try {
# 实例化 SlideCollection 类
$slds = $pres->getSlides();
for($i = 0; $i < java_values($pres->getLayoutSlides()->size()) ; $i++) {
# 向 Slides 集合中添加空白幻灯片
$slds->addEmptySlide($pres->getLayoutSlides()->get_Item($i));
}
# 对新添加的幻灯片进行一些操作
# 将 PPTX 文件保存到磁盘
$pres->save("EmptySlide.pptx", SaveFormat::Pptx);
} finally {
$pres->dispose();
}
FAQ
我可以在特定位置插入新幻灯片,而不仅仅是添加到末尾吗?
可以。库支持幻灯片集合及 insert/clone 操作,您可以在所需的索引处插入幻灯片,而不局限于末尾。
基于布局添加幻灯片时,主题/样式会被保留吗?
会。布局继承其母版的格式,新幻灯片则继承所选布局及其关联的母版。
在添加幻灯片之前,一个全新的“空”演示文稿中默认存在什么幻灯片?
新创建的演示文稿默认包含一张索引为零的空白幻灯片。在计算插入索引时需要考虑到这一点。
如果母版有很多选项,我该如何为新幻灯片选择“合适”的布局?
通常选择与所需结构匹配的 LayoutSlide(例如 Title and Content、Two Content 等,参考 SlideLayoutType)。如果缺少相应布局,您可以先 add it to the master,然后再使用。