如何在pythonpptx上的“幻灯片布局”上放置多个布局主题

2024-05-16 01:15:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在尝试在python pptx prs上使用一些自定义布局,但是当我调用prs.slide_layouts方法时,它只返回一些布局,只返回其中一个布局主题。我使用的演示文稿几乎有100个布局,但是当我调用下面的代码时,它会打印12个数字(按顺序,从1到11)

from pptx import Presentation
from pptx.util import Inches, Pt

for slide_layout in prs.slide_layouts:
    print(prs.slide_layouts.index(slide_layout))

输出:

0
1
2
3
4
5
6
7
8
9
10
11

如何访问python pptx上的所有布局主题?多谢各位


Tags: 方法代码fromimport主题顺序数字布局
1条回答
网友
1楼 · 发布于 2024-05-16 01:15:29

每个幻灯片布局属于且仅属于一个幻灯片母版

prs.slide_layoutsprs.slide_masters[0].slide_layouts的便捷快捷方式;方便,因为大多数演示文稿只有一个幻灯片母版

如果您有多个幻灯片母版,那么您需要明确说明要从哪个母版中提取。可能是这样的:

def iter_all_layouts(prs):
    """Generate each slide layout in the presentation, across all slide masters."""
    for master in prs.slide_masters:
        for layout in master.slide_layouts:
            yield layout

或者,如果您知道需要第二个主控形状的第三个布局:

prs.slide_masters[1].slide_layouts[2]

相关问题 更多 >