Python 批量将 PPT 文件转为图片文件

Python 批量将 PPT 文件转为图片文件 简介
该功能是基于 Python 实现的自动化办公格式转换工具,专门用于批量处理 PPT 演示文稿(支持 PPTX 主流格式、兼容 PPT 旧格式),可自动扫描指定文件夹内所有 PPT 文件,将每一张幻灯片独立转换为通用图片格式,无需手动单文件、单幻灯片逐一导出,大幅提升办公归档、图文编辑、线上展示等场景的处理效率。
核心特性
批量高效处理:自动遍历目标文件夹(支持递归查找子文件夹内的 PPT 文件),一次性识别所有待转换演示文稿并批量执行转换,彻底替代人工重复操作,节省大量时间成本,尤其适用于课件归档、发布会材料整理等大批量处理场景。
多格式与幻灯片精准拆分
输出灵活:支持 JPG/JPEG、PNG、BMP 等常用图片格式,可按需配置图片质量与分辨率,满足高清打印、线上低容量传输等不同需求;
命名规整:自动将 PPT 的每一张幻灯片单独转换为一张图片,按 “PPT 文件名 – 幻灯片页码” 规则命名(如产品发布会-001.png、培训课件-005.jpg),方便后续查找与分类整理。
高保真还原与强兼容性
版式还原:转换过程中最大程度保留原 PPT 的幻灯片布局、字体样式、图片位置、图表格式、背景样式、页眉页脚等细节,转换后的图片与原幻灯片视觉效果高度一致,无需二次调整;
兼容广泛:支持常规 PPTX/PPT 文件、大容量图文混排 PPT、带自定义模板、占位符、简单动画静态效果的 PPT 文件转换,适配不同办公场景需求。
操作简洁易上手:基于成熟 Python 第三方库构建,代码逻辑清晰,参数配置简单,无需复杂专业技术背景,既可直接运行脚本,也可按需微调输出路径、图片格式等参数,还能封装为可双击运行的程序,方便非编程人员使用。

# -*- coding: utf-8 -*-

”’
Python批量将PPT文件转为图片文件
”’

# 安装所需模块
# pip install comtypes -i https://pypi.tuna.tsinghua.edu.cn/simple

# 导入包
import comtypes.client
import os

# 定义方法
def init_powerpoint():
”’初始化PPT”’
powerpoint = comtypes.client.CreateObject(“Powerpoint.Application”)
powerpoint.Visible = 1
return powerpoint

def ppt_to_img(powerpoint, inputFileName, outputFileName, imgpath):
”’PPT转图片操作”’
if outputFileName[-3:] != ‘pdf’:
outputFileName = outputFileName[0:-4] + “.pdf”
deck = powerpoint.Presentations.Open(inputFileName)
# 设置输出名称
namear = os.path.split(outputFileName)
minimgpath = namear[1].replace(“.pdf”,”.pdf”)
minimgpath = minimgpath.replace(“..”,”.”)
minimgpath = os.path.join(imgpath, minimgpath)
# 17数字是ppt转图片,32数字是ppt转pdf。
deck.SaveAs(minimgpath, 17)
deck.Close()

def convert_files_in_folder(powerpoint, folder, imgpath):
”’过滤所有PPT文件并加入转换”’
if not os.path.exists(imgpath):
os.makedirs(imgpath)
files = os.listdir(folder)
pptfiles = [f for f in files if f.endswith((“.ppt”, “.pptx”))]
for pptfile in pptfiles:
fullpath = os.path.join(folder, pptfile)
print(‘转换成功:’ + fullpath)
ppt_to_img(powerpoint, fullpath, fullpath, imgpath)

if __name__ == “__main__”:

# PPT文件的存放目录
pptpath = r’D:\Test\pptx’

# 转成图片后的保存目录
imgpath = r’D:\Test\image’

# 遍历所有PPT文件并转换
powerpoint = init_powerpoint()
convert_files_in_folder(powerpoint, pptpath, imgpath)
powerpoint.Quit()

原创文章,作者:管理员,如若转载,请注明出处:https://www.devcn.cn/58.html

(0)
管理员管理员
上一篇 2天前
下一篇 2天前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注