如何从python pptx生成的幻灯片中删除空白文本框?

时间:2019-10-10 18:53:59

标签: python textbox powerpoint python-pptx

from pptx import Presentation
from pptx.util import Inches

prs = Presentation("my_pptfile_begin.pptx")

left = Inches(0.6)
top = Inches(1.7)

blank_slide_1 = prs.slide_layouts[6]
add_the_slide = prs.slides.add_slide(blank_slide_1)
img_path1 = 'Three_Part_Set_Difference_excel_printout.png'
slide1=prs.slides[1]
pic = slide1.shapes.add_picture(img_path1, left, top)

blank_slide_2 = prs.slide_layouts[6]
add_the_slide = prs.slides.add_slide(blank_slide_2)
img_path2 = 'my_image.png'
slide2=prs.slides[2]
pic = slide2.shapes.add_picture(img_path2, left, top)

logoleft = Inches(4.7)
logotop = Inches(1.8)

blank_slide_3 = prs.slide_layouts[6]
add_the_slide = prs.slides.add_slide(blank_slide_3)
img_path3 = 'logo_slide.png'
slide3=prs.slides[3]
pic = slide3.shapes.add_picture(img_path3, logoleft, logotop)

prs.save('my_pptfile_Final.pptx')

如何删除空白文本框(实际上是所有文本框)?

我的Powerpoint输出文件中不需要任何文本框

2 个答案:

答案 0 :(得分:1)

如果您要谈论的是空的占位符形状,请使用没有占位符的幻灯片版式。

在您自己调用Presentation()时使用的默认模板(不带参数)中,这是我认为的第七个布局(prs.slide_layouts[6])。

但是您需要针对所使用的任何起始.pptx文件(在您的情况下为“ my_pptfile_begin.pptx”)进行调整,方法是在幻灯片母版视图中查看该文件并向下计数到空白布局(或者添加一个它没有一个。)

答案 1 :(得分:0)

blank_slide_3 = prs.slide_layouts [x]其中x是pptx应用程序默认模板或公司默认模板的幻灯片编号。

因此,您需要基于您的ppt应用程序

的默认设置,了解默认模板并了解没有该模板的文本框的空白幻灯片