布局幻灯片
Contents
[
Hide
]
本文演示了如何在 Aspose.Slides for PHP via Java 中使用 Layout Slides。布局幻灯片定义了普通幻灯片继承的设计和格式。您可以添加、访问、克隆和删除布局幻灯片,并清理未使用的幻灯片以减小演示文稿大小。
添加布局幻灯片
您可以创建自定义布局幻灯片以定义可复用的格式。例如,您可以添加一个在使用此布局的所有幻灯片上显示的文本框。
function addLayoutSlide() {
$presentation = new Presentation();
try {
$masterSlide = $presentation->getMasters()->get_Item(0);
// 创建一个具有空白布局类型和自定义名称的布局幻灯片。
$layoutSlide = $presentation->getLayoutSlides()->add($masterSlide, SlideLayoutType::Blank, "Main layout");
$presentation->save("layout_slide.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}
💡 提示 1: 布局幻灯片充当单个幻灯片的模板。您可以一次定义通用元素,然后在多个幻灯片中重复使用它们。
💡 提示 2: 当您在布局幻灯片上添加形状或文本时,基于该布局的所有幻灯片会自动显示此共享内容。
下面的截图显示了两张幻灯片,它们各自从同一布局幻灯片继承了文本框。

访问布局幻灯片
可以通过索引或布局类型(例如 Blank、Title、SectionHeader 等)访问布局幻灯片。
function accessLayoutSlide() {
$presentation = new Presentation("layout_slide.pptx");
try {
// 按索引访问.
$firstLayoutSlide = $presentation->getLayoutSlides()->get_Item(0);
// 按布局类型访问.
$blankLayoutSlide = $presentation->getLayoutSlides()->getByType(SlideLayoutType::Blank);
} finally {
$presentation->dispose();
}
}
删除布局幻灯片
如果不再需要,您可以删除特定的布局幻灯片。
function removeLayoutSlide() {
$presentation = new Presentation("layout_slide.pptx");
try {
// 按类型获取布局幻灯片并将其移除。
$layoutSlide = $presentation->getLayoutSlides()->getByType(SlideLayoutType::Custom);
$presentation->getLayoutSlides()->remove($layoutSlide);
$presentation->save("layout_slide_removed.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}
删除未使用的布局幻灯片
为了减小演示文稿大小,您可能需要删除任何普通幻灯片未使用的布局幻灯片。
function removeUnusedLayoutSlides() {
$presentation = new Presentation("layout_slide.pptx");
try {
// 自动删除所有未被任何幻灯片引用的布局幻灯片。
$presentation->getLayoutSlides()->removeUnused();
$presentation->save("layout_slides_removed.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}
克隆布局幻灯片
您可以使用 addClone 方法复制布局幻灯片。
function cloneLayoutSlides() {
$presentation = new Presentation("layout_slide.pptx");
try {
// 按类型获取现有的布局幻灯片。
$blankLayoutSlide = $presentation->getLayoutSlides()->getByType(SlideLayoutType::Blank);
// 克隆布局幻灯片并将其添加到布局幻灯片集合的末尾。
$clonedLayoutSlide = $presentation->getLayoutSlides()->addClone($blankLayoutSlide);
$presentation->save("layout_slide_cloned.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}
✅ 摘要: 布局幻灯片是管理跨幻灯片一致格式的强大工具。Aspose.Slides 提供了对创建、管理和优化布局幻灯片的完整控制。