本文将分享10个实用的PPT自动化脚本,帮助新手小白快速上手。
1. 创建一个新的PPT文件
from pptx import Presentation
# 创建新的PPT文件并添加标题幻灯片
def create_new_presentation(file_name, title):
prs = Presentation()
slide = prs.slides.add_slide(prs.slide_layouts[0]) # 添加标题幻灯片
title_placeholder = slide.shapes.title
subtitle_placeholder = slide.placeholders[1]
title_placeholder.text = title # 设置标题
subtitle_placeholder.text = "欢迎使用PPT自动化" # 设置副标题
prs.save(file_name)
create_new_presentation('example.pptx', '我的新幻灯片')
print("新PPT文件已创建!")
解释
该脚本创建一个新的PPT文件,并添加一张标题幻灯片。这对于程序员而言,快速生成演示文稿的框架是基本技能;而对于普通用户,尤其是在准备会议时,这样的工具将节省很多时间。
2. 向PPT中添加文本框
# 向已有的PPT中添加文本框
def add_textbox_to_slide(file_name, text):
prs = Presentation(file_name)
slide = prs.slides[0] # 获取第一张幻灯片
left = top = width = height = 1000000 # 设置文本框的位置和大小
textbox = slide.shapes.add_textbox(left, top, width, height)
textbox.text = text # 设置文本框内容
prs.save(file_name)
add_textbox_to_slide('example.pptx', '这是一个文本框示例。')
print("文本框已成功添加到PPT中!")
解释
这个脚本向指定的PPT文件的第一张幻灯片添加一个文本框。文本框可以用于插入说明性文字或其他信息,非常实用于补充幻灯片内容。
3. 修改幻灯片中的文本
# 修改幻灯片中现有文本的内容
def replace_text_in_slide(file_name, old_text, new_text):
prs = Presentation(file_name)
for slide in prs.slides:
for shape in slide.shapes:
if hasattr(shape, "text") and old_text in shape.text:
shape.text = shape.text.replace(old_text, new_text) # 替换文本
prs.save(file_name)
replace_text_in_slide('example.pptx', '文本框示例', '替换后的文本')
print("幻灯片中的文本已成功修改!")
解释
该脚本查找并替换PPT中某些幻灯片的文本内容。当需要更新演示文稿中的过时信息时,这是一个非常有效的解决方案。
4. 删除幻灯片
# 从PPT中删除指定的幻灯片
def delete_slide(file_name, slide_index):
prs = Presentation(file_name)
del prs.slides[slide_index] # 删除指定索引的幻灯片
prs.save(file_name)
delete_slide('example.pptx', 1) # 删除第二张幻灯片(索引从0开始)
print("指定的幻灯片已成功删除!")
解释
这个脚本删除PPT文件中的特定幻灯片。在演示文稿审阅过程中,可能会希望去掉不再需要的内容,这种功能就能很方便地实现。
5. 添加图片到幻灯片
# 向幻灯片中添加图片
def add_image_to_slide(file_name, image_path):
prs = Presentation(file_name)
slide = prs.slides.add_slide(prs.slide_layouts[5]) # 添加一张空白幻灯片
left = top = 1000000 # 设置图片位置
slide.shapes.add_picture(image_path, left, top, width=5000000) # 设置宽度
prs.save(file_name)
add_image_to_slide('example.pptx', 'image.png')
print("图片已成功插入到幻灯片中!")
解释
该脚本向幻灯片中插入一张图片。图像在许多演示文稿中都是不可或缺的一部分,通过此脚本,可以快速增加视觉元素。
6. 创建带动画效果的幻灯片
from pptx.util import Inches
# 向幻灯片中添加具有动画的形状
def add_shape_with_animation(file_name):
prs = Presentation(file_name)
slide = prs.slides.add_slide(prs.slide_layouts[5]) # 添加空白幻灯片
left = top = Inches(2)
width = height = Inches(2)
shape = slide.shapes.add_shape(MSO_SHAPE.CIRCLE, left, top, width, height) # 添加圆形
shape.fill.solid() # 设置填充颜色
shape.fill.fore_color.rgb = RGBColor(255, 0, 0) # 红色
prs.save(file_name)
add_shape_with_animation('example.pptx')
print("带动画效果的形状已成功添加!")
解释
这个脚本在幻灯片中添加一个带有动画效果的形状。虽然python-pptx库对动画支持有限,但可以通过设置形状的属性来增强演示效果。
7. 创建带表格的幻灯片
# 在幻灯片中添加表格
def add_table_to_slide(file_name):
prs = Presentation(file_name)
slide = prs.slides.add_slide(prs.slide_layouts[5]) # 添加空白幻灯片
rows, cols = 3, 2
table = slide.shapes.add_table(rows, cols, Inches(2), Inches(2), Inches(5), Inches(2)).table
# 填充表格数据
table.cell(0, 0).text = '列1'
table.cell(0, 1).text = '列2'
table.cell(1, 0).text = '数据1'
table.cell(1, 1).text = '数据2'
table.cell(2, 0).text = '数据3'
table.cell(2, 1).text = '数据4'
prs.save(file_name)
add_table_to_slide('example.pptx')
print("表格已成功添加到幻灯片中!")
解释
该脚本在幻灯片中添加一个简单的表格。表格可以用来清晰地展示分类数据,是演示中非常实用的元素。
8. 导出PPT为PDF格式
import os
# 将PPT导出为PDF文件
def convert_ppt_to_pdf(ppt_file, pdf_file):
from comtypes.client import CreateObject
powerpoint = CreateObject("Powerpoint.Application")
powerpoint.Visible = 1
deck = powerpoint.Presentations.Open(ppt_file)
deck.SaveAs(pdf_file, 32) # 32表示pdf格式
deck.Close()
powerpoint.Quit()
convert_ppt_to_pdf('example.pptx', 'example.pdf')
print("PPT已成功转换为PDF格式!")
解释
此脚本将PPT文件转换为PDF格式。对于需要分享或打印的演示文稿,将其转换为PDF是一种常见做法,可以确保文件格式不被更改。
9. 列出所有幻灯片的标题
# 列出PPT中所有幻灯片的标题
def list_slide_titles(file_name):
prs = Presentation(file_name)
titles = [slide.shapes.title.text for slide in prs.slides if slide.shapes.title]
return titles
titles = list_slide_titles('example.pptx')
print("幻灯片标题如下:")
for title in titles:
print(title)
解释
该脚本提取PPT中所有幻灯片的标题并打印。这非常有用,特别是在需要快速了解演示文稿结构时,帮助用户快速识别重点内容。
10. 保存PPT副本
# 保存PPT文档的副本
def save_ppt_copy(original_file, copy_file):
prs = Presentation(original_file)
prs.save(copy_file)
save_ppt_copy('example.pptx', 'copy_of_example.pptx')
print("PPT副本已成功保存!")
解释
此脚本将PPT文件保存为副本,便于备份或版本控制。在进行重大更改之前,总是建议先保存一个副本,以保护原始文件。
以上就是10个实用的Python PPT自动化脚本示例,希望能够帮助你在PowerPoint演示文稿处理和自动化方面提高效率!
这些简单的示例展示了Python在处理PPT中的强大能力,同时也激发你进一步探索的兴趣。如果你有任何问题或想法,欢迎随时交流!
全套Python学习资料分享:
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
三、python入门资料大全
四、python进阶资料大全
五、python爬虫专栏
六、入门学习视频全套
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
七、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
八、python最新面试题
获取资料:
1、点赞+再看
2、关注公众号【印象Python】
3、公众号内回复【获取2024最新Python全套资料大全】即可