Python 插入第五张幻灯片中的图片
Python Insert image from fifth slide
我有一个包含图像的文件夹,我将其插入到我正在生成的 PPTX 文件中。下面的代码从第一张幻灯片开始插入图像,但我希望它从第五张幻灯片开始插入图像。我无法寻找解决方案请帮忙。提前致谢。
def Generate_PPT(avg_plots):
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
for imagePath in (avg_plots):
if (avg_plots.index(imagePath)) % 2 == 0:
slide = prs.slides.add_slide(blank_slide_layout)
left = top = Inches(1)
pic = slide.shapes.add_picture(imagePath, left, top)
prs.save(os.path.join(root,folder1,'PPT_plots.pptx'))
请参考以下内容link:
https://python-pptx.readthedocs.io/en/latest/api/slides.html
要获取第五张幻灯片,请使用如下所示的 get 方法。
slide=prs.slides.get(4)
如果你想生成一个新的ppt并添加第5张幻灯片的图片,请参考下面的代码。
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
for x in range(5):
slide = prs.slides.add_slide(blank_slide_layout) ## 5 slides got created
print(prs.slides.index(slide)) # this will print 4, index for the last slide
slide = prs.slides.get(4) #use this to access slide 5
# do the changes to the slide (add image)
prs.save(os.path.join('PPT_plots.pptx'))
解决此问题的一种方法是在进入 "image insertion" 循环之前创建前四张幻灯片:
def Generate_PPT(avg_plots):
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
# --- add four blank slides such that first image appears on fifth slide ---
for _ in range(4):
prs.slides.add_slide(blank_slide_layout)
# --- then image insertion proceeds from fifth slide onward ---
for imagePath in (avg_plots):
if (avg_plots.index(imagePath)) % 2 == 0:
slide = prs.slides.add_slide(blank_slide_layout)
left = top = Inches(1)
pic = slide.shapes.add_picture(imagePath, left, top)
prs.save(os.path.join(root, folder1, 'PPT_plots.pptx'))
我有一个包含图像的文件夹,我将其插入到我正在生成的 PPTX 文件中。下面的代码从第一张幻灯片开始插入图像,但我希望它从第五张幻灯片开始插入图像。我无法寻找解决方案请帮忙。提前致谢。
def Generate_PPT(avg_plots):
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
for imagePath in (avg_plots):
if (avg_plots.index(imagePath)) % 2 == 0:
slide = prs.slides.add_slide(blank_slide_layout)
left = top = Inches(1)
pic = slide.shapes.add_picture(imagePath, left, top)
prs.save(os.path.join(root,folder1,'PPT_plots.pptx'))
请参考以下内容link: https://python-pptx.readthedocs.io/en/latest/api/slides.html
要获取第五张幻灯片,请使用如下所示的 get 方法。
slide=prs.slides.get(4)
如果你想生成一个新的ppt并添加第5张幻灯片的图片,请参考下面的代码。
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
for x in range(5):
slide = prs.slides.add_slide(blank_slide_layout) ## 5 slides got created
print(prs.slides.index(slide)) # this will print 4, index for the last slide
slide = prs.slides.get(4) #use this to access slide 5
# do the changes to the slide (add image)
prs.save(os.path.join('PPT_plots.pptx'))
解决此问题的一种方法是在进入 "image insertion" 循环之前创建前四张幻灯片:
def Generate_PPT(avg_plots):
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
# --- add four blank slides such that first image appears on fifth slide ---
for _ in range(4):
prs.slides.add_slide(blank_slide_layout)
# --- then image insertion proceeds from fifth slide onward ---
for imagePath in (avg_plots):
if (avg_plots.index(imagePath)) % 2 == 0:
slide = prs.slides.add_slide(blank_slide_layout)
left = top = Inches(1)
pic = slide.shapes.add_picture(imagePath, left, top)
prs.save(os.path.join(root, folder1, 'PPT_plots.pptx'))