如何使用Python在PPT中批量插入图片

PythonFun 2024-11-10 12:09:19编程技术
161

在日常办公和数据报告中,PPT作为一种常用的演示工具,经常需要插入大量的图片来增强视觉效果和信息传达。Python作为一种强大的编程语言,提供了多种方法来实现这一目标。本文将详细介绍如何使用Python在PPT中批量插入图片,帮助读者掌握这一重要技能。

办公自动化办公中,Python最大的优势是可以批量操作,省去了用户粘贴、复制、插入等繁琐的操作。经常做PPT的朋友都知道,把图片插入到PPT当中的固定位置是一个非常繁琐的操作,往往调整图片时耗费大量的时间和精力。如何能省时省力插入图片呢?今天我们来一起探索一下批量插入图片到PPT的三种办法。

一、手工操作

在WPS幻灯片中,通过插入——分页插图——再选择要插入的图片,就可以批量把图片插入到PPT当中,不过此时插入的位置默认是PPT的中间位置,就是说无法按照指定的位置插入。

如何使用Python在PPT中批量插入图片

最后的效果如下,每张图片都会居中显示:

如何使用Python在PPT中批量插入图片

二、用python-pptx模块

如果用Python的话,就可以批量插入,而且可以插入指定位置,这样可以大大节省插入的时间。

实现的过程也很简单,主要是导入指定模块,利用os来遍历所有的图片,然后创建ppt对象,插入空白的slide,然后通过循环的办法把图片插入到幻灯片中。根据图片距离左、上、高度来最终确定其位置。

from pptx import Presentation
from pptx.util import Inches
import os
 
# 获取当前目录下所有的png文件
pics = [file for file in os.listdir(".") if file.endswith(".png")]
 
# 创建一个演示文稿对象
prs = Presentation()
 
for pic in pics:
    # 添加一张新幻灯片
    slide_layout = prs.slide_layouts[5]  # 使用空白布局
    slide = prs.slides.add_slide(slide_layout)
 
    # 添加图片到幻灯片
    img_path = pic
    left = Inches(5.8)
    top = Inches(2)
    height = Inches(3.5)
    slide.shapes.add_picture(img_path, left, top, height=height)
 
# 保存演示文稿
prs.save('add-image-in-presentation.pptx')

三、利用Aspose.slides这个模块

Aspose模块的办法和python-pptx的类似。过程也是首先遍历得到图片的地址,然后创建PPT对象,通过添加空白slide,把图片插入的办法来实现。

import aspose.slides as slides
import os
pics = [file for file in os.listdir(".") if file.endswith(".png")]
 
    # 创建演示文稿
with slides.Presentation() as pres:
    # 访问第一张幻灯片
    for num,pic in enumerate(pics,0):
        
        slide = pres.slides.add_empty_slide(pres.layout_slides[0])
 
        # 从文件加载图像
        with open(pic, "rb") as in_file:
          
            # 将图像添加到演示文稿的图像集
            image = pres.images.add_image(in_file)
 
            # 将图像添加到幻灯片
            slide.shapes.add_picture_frame(slides.ShapeType.RECTANGLE, 20, 20, 100, 100, image)
 
    # 保存演示文稿
    pres.save("add-image-in-presentation.pptx", slides.export.SaveFormat.PPTX)

slide.shapes.add_picture_frame(slides.ShapeType.RECTANGLE, 20, 20, 100, 100, image)这行代码中,前2个数是是图片距离左侧和右侧的距离。

四、学后总结

经过实验Python-pptx这个模块插入图片的速度更快,因此建议使用第二种方法。

Aspose.slides这个模块比较大,而且是收费的,如果是免费的生成的PPT中有水印,还要去除才可以。

通过本文的介绍,我们了解了如何使用Python在PPT中批量插入图片。我们从创建PPT文件开始,逐步介绍了如何读取图片文件、设置图片位置和大小以及将图片插入PPT。这些步骤不仅能够帮助读者完成基本的图片插入任务,还能够为更复杂的PPT操作打下坚实的基础。希望本文的内容能够为您的Python办公自动化之旅提供有力支持,让您的PPT制作更加高效和专业。

Python PPT
THE END
站地网
别听世俗的耳语,去看自己喜欢的风景!

相关推荐

Python中axis=0与axis=1的方向差异详解
Python在处理数据时,经常需要对数组或矩阵进行各种操作,如求和、求平均值等。这些操作通常涉及到 axis 参数的使用。axis=0 和 axis=1 是两个常见的参数值,它们分别表示沿着...
2025-01-17 编程技术
119

Python使用Matplotlib和NumPy绘制蛇年春节祝福图实例解析
在编程领域,使用Python绘制节日祝福图是一种有趣且富有创意的方式。本文将详细介绍如何使用Matplotlib和NumPy库绘制一个充满蛇年春节氛围的艺术图案。通过绘制数字块、蛇的身...
2025-01-14 编程技术
142

使用PIL在Python中创建图片裁剪工具的实现步骤
Python作为一种强大且易于学习的编程语言,提供了丰富的库来支持图像处理任务。其中,PIL(Python Imaging Library)是最受欢迎的库之一。本文将详细介绍如何使用PIL在Python中...
2025-01-14 编程技术
134

PPT切换效果怎么设置?PPT幻灯片切换效果设置方法详解
在制作PPT时,幻灯片的切换效果不仅能增加演示的视觉吸引力,还能帮助观众更好地理解内容。本文ZHANID工具网将详细介绍如何设置PPT幻灯片的切换效果,帮助您制作出更加专业的...
2025-01-14 电脑知识
119

Python Requests库全面解析及实战用法详解
无论是获取网页内容、与API进行交互,还是实现数据爬取,都需要一个强大且易用的HTTP库。Python的Requests库正是这样一款工具,它以其简洁的API和强大的功能赢得了广大开发者...
2025-01-11 编程技术
152

Python中dropna()函数的作用及示例说明
在 Python 中,Pandas 库提供了一个非常方便的函数——dropna(),用于删除包含缺失值的行或列。本文将详细介绍 dropna() 函数的作用,并通过具体的示例说明如何使用该函数来处...
2025-01-10 编程技术
140