脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|shell|

服务器之家 - 脚本之家 - Python - 几行代码教你自动操作 PPT

几行代码教你自动操作 PPT

2023-12-25 17:40Python都知道 Python

在本文中,我们介绍了如何使用 python-pptx 库创建、编辑和转换PPT文件。

Python有几个库可以操作PPT文件,比如python-pptx和pptx2pdf。其中,python-pptx是用Pure-Python编写的,而pptx2pdf依赖于Microsoft PowerPoint软件。我们在这里介绍python-pptx库。

几行代码教你自动操作 PPT

安装python-pptx库

可以使用pip命令来安装python-pptx库,命令如下:

pip install python-pptx

创建一个ppt

使用python-pptx库创建PPT,可以尝试以下代码:

from pptx import Presentation

# 创建新的PPT对象
ppt = Presentation()

# 在新的幻灯片中添加标题
slide = ppt.slides.add_slide(ppt.slide_layouts[0])
title = slide.shapes.title
title.text = 'Hello World!'

# 存储PPT文件
ppt.save('hello.pptx')

编辑一个ppt

在pptx库中添加和修改文字或图片非常简单。可以尝试以下代码来在现有的PPT中添加一些文字:

from pptx import Presentation
from pptx.util import Inches

# 打开现有PPT文件
ppt = Presentation('hello.pptx')

# 在新的幻灯片中添加图片
slide = ppt.slides.add_slide(ppt.slide_layouts[1])
img_path = 'picture.png'
left = top = Inches(1)
pic = slide.shapes.add_picture(img_path, left, top)

# 存储PPT文件
ppt.save('hello.pptx')

添加文字首先要获取当前的幻灯片,然后添加文字框,代码如下:

from pptx import Presentation  

prs = Presentation('Test.pptx')  

# 获取当前的幻灯片  
slide = prs.slides[0]  

# 在幻灯片中添加文本框 
textbox = slide.shapes.add_textbox(0, 0, 200, 200)  

# 设置文本内容 
textbox.text = 'Hello World!'  

prs.save('Test1.pptx')  

添加图片

添加图片也是有几种方法,下面介绍如何使用图片路径添加图片的方法,代码如下:

from pptx import Presentation    

prs = Presentation('Test.pptx')    

slide = prs.slides[0]  

# 获取图片路径   
img_path = 'example.jpg'    

# 添加图片   
slide.shapes.add_picture(img_path, 0, 0, width=None, height=None)    

添加表格有两种方法,一种是通过设置表格的行和列参数,添加一个空表格,另一种是在表格中添加一些内容,然后添加进去表格,下面举个添加有内容的表格的例子,代码如下:

from pptx import Presentation    

prs = Presentation('Test.pptx')    

slide = prs.slides[0]  

# 定义表格内容 
rows, cols = (3, 5)    
data = [['Name', 'Age', 'Gender', 'Height', 'Weight'],    
['Tom', '12', 'male', '140cm', '20kg'],    
['Lucy', '10', 'female', '130cm', '18kg']]    

# 添加表格   
table = slide.shapes.add_table(rows, cols, 0, 0, 0, 0).table    

# 写入表格内容  
for row in range(rows):    
 for col in range(cols):    
  table.cell(row, col).text = data[row][col]       

可以看到,通过pptx库很容易就可以在PPT中添加文本或图片。如果需要进行更高级的编辑,请参考官方文档。

将PPT转换成PDF

如果需要将PPT文件转换成PDF格式,可以使用外部库pptx2pdf,可以使用以下代码:

from pptx2pdf import convert

# 转换PPT到PDF
convert("hello.pptx", "hello.pdf")

总结

在本文中,我们介绍了如何使用python-pptx库创建、编辑和转换PPT文件。这个库非常简单易用,并且提供了完整的文档。如果需要操作PPT文件,这个库是非常好的选择。

原文地址:https://mp.weixin.qq.com/s?__biz=MzkwMDE4NzE5OQ==&mid=2247502219&idx=1&sn=4a3af339bca504f357990805e45c4dcd

延伸 · 阅读

精彩推荐
  • Python解决python3 urllib中urlopen报错的问题

    解决python3 urllib中urlopen报错的问题

    这篇文章主要介绍了关于解决python3 urllib中urlopen报错问题的相关资料,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看...

    pythonniu7262020-09-25
  • Python五种Python转义表示法

    五种Python转义表示法

    这篇文章主要介绍了五种Python转义表示法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小...

    写代码的明哥6032022-02-18
  • PythonPython中的字典合并与列表合并技巧

    Python中的字典合并与列表合并技巧

    这篇文章主要介绍了Python中的字典合并与列表合并技巧,下文围绕主题展开详细的内容介绍,具有一的的参考价值,需要的小伙伴可以参考一下...

    蚂蚁ailing3402022-12-21
  • PythonPython处理中文标点符号大集合

    Python处理中文标点符号大集合

    中文文本中可能出现的标点符号来源比较复杂,通过匹配等手段对他们处理的时候需要格外小心,防止遗漏,下面小编给大家带来了Python处理中文标点符号...

    脚本之家7632021-02-21
  • PythonPython浅复制中对象生存周期实例分析

    Python浅复制中对象生存周期实例分析

    这篇文章主要介绍了Python浅复制中对象生存周期,结合实例形式分析了Python面向对象中的浅复制操作时对象的生命周期问题,需要的朋友可以参考下...

    grey_csdn11562021-01-26
  • Python详解Python requests模块

    详解Python requests模块

    今天给大家带来的是关于Python的相关知识,文章围绕着Python requests模块展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下...

    酒酿小圆子~6842021-12-06
  • Pythonpython ipset管理 增删白名单的方法

    python ipset管理 增删白名单的方法

    今天小编就为大家分享一篇python ipset管理 增删白名单的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    云中不知人11622021-05-15
  • Pythonpytorch构建网络模型的4种方法

    pytorch构建网络模型的4种方法

    这篇文章主要为大家详细介绍了pytorch构建网络模型的4种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    denny4026532021-01-31