在学习如何填充占位符的时候也提到了,占位符对象也有表格类型的,当然PPT默认的母版中并没有表格占位符,所以又需要自己准备一份文档了,或者使用书中准备好的“测试文档2.ppt”,里面下标为1的母版是有表格占位符的,填充表格占位符的代码如下:
from pptx import Presentation
from pptx.enum.shapes import PP_PLACEHOLDER_TYPE
ppt = Presentation("./ppt_ files/测试文档2.pptx")
slide = ppt.slides.add_slide(ppt.slide_layouts[1])
for placeholder in slide.placeholders:
phf = placeholder.placeholder_format
if phf.type != PP_PLACEHOLDER_TYPE.TABLE:
continue
graphic_frame = placeholder.insert_table(rows=4,cols=3)
ppt.save("./ppt_ files/test.pptx")
在填充表格占位符之前还要先判断当前的占位符是不是表格类型,如果类型不是PP_PLACEHOLDER_TYPE.TABLE,硬要填充一个表格的话程序肯定是会罢工报错的,确定是表格占位符之后再调用占位符对象的insert_table()方法,把表格行数和列数传进去就行了。