我想使用图片占位符自动替换 powerpoint 中的图像我使用 python 使其动态化,但我遇到了这样的错误:Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'LayoutPlaceholder' object has no attribute 'insert_picture'我使用的代码如下: from pptx import Presentation
from pptx.util import Inches from PIL import Image
prs = Presentation(r'..\gambar\base_master_mod.pptx')
slide = prs.slide_layouts[0]
placeholder = slide.placeholders[1] # id key, not posisition
placeholder.name
placeholder.placeholder_format.type
picture = placeholder.insert_picture("..\output_graphics\image_res.png")这里是我使用的 powerpoint:这里如何解决问题?
1 回答

慕莱坞森
TA贡献1810条经验 获得超4个赞
将第 5 行更改为:
slide = prs.slides[0]
看看这是否能让你更接近。您可能仍然需要使用占位符 id 来弄清楚它们是什么。你可以做这样的事情来列出它们。
for ph in slide.placeholders: print("placeholder %d has name: %s" % (ph.placeholder_format.idx, ph.name)
布局占位符与具有不同行为的幻灯片占位符不同。该.insert_picture()
方法仅适用于幻灯片图片占位符。这就是它说的原因LayoutPlaceholder has no attribute 'insert_picture'
。
添加回答
举报
0/150
提交
取消