今天让claude3帮忙写了个python代码,实现了将ppt转换成图片功能。WPS中实现这个功能还需要开通会员,
其实也就一点代码就可以实现,而且powerpoint中还没有这个将页面转换成图片的功能,废话不多说,直接上源码。
import os
from comtypes.client import CreateObject
from tkinter import Tk, filedialog, Button, Label, StringVar, Entry, messagebox
import tkinter as tk
from tkinter import messagebox
def browse_file():
global ppt_path
file_path = filedialog.askopenfilename(filetypes=[("PowerPoint Files", "*.pptx;*.ppt")])
normalized_path = os.path.normpath(file_path) # 规范化路径
ppt_path.set(normalized_path)
def browse_folder():
global images_dir
folder_path = filedialog.askdirectory()
normalized_path = os.path.normpath(folder_path) # 规范化路径
images_dir.set(normalized_path)
def convert_to_images():
try:
ppt_to_images(ppt_path.get(), images_dir.get())
messagebox.showinfo("完成", "PPT已成功转换为图片")
except Exception as e:
messagebox.showerror("错误", str(e))
def ppt_to_images(ppt_path, images_dir):
# 确保输出目录存在
if not os.path.exists(images_dir):
os.makedirs(images_dir)
# 初始化PowerPoint应用
powerpoint = CreateObject("Powerpoint.Application")
powerpoint.Visible = 1
# 打开PPT文件
ppt = powerpoint.Presentations.Open(ppt_path)
# 遍历每个幻灯片并保存为图片
for i, slide in enumerate(ppt.Slides):
image_path = os.path.join(images_dir, f"slide_{i + 1}.jpg")
slide.Export(image_path, "JPG")
# 关闭PPT文件和PowerPoint应用
ppt.Close()
powerpoint.Quit()
if __name__ == "__main__":
root = Tk()
root.title("PPT转图片工具")
ppt_path = StringVar()
images_dir = StringVar()
Label(root, text="选择PPT文件:").pack()
Entry(root, textvariable=ppt_path, width=50).pack()
Button(root, text="浏览", command=browse_file).pack()
Label(root, text="图片输出目录:").pack()
Entry(root, textvariable=images_dir, width=50).pack()
Button(root, text="浏览", command=browse_folder).pack()
Button(root, text="转换", command=convert_to_images).pack()
root.mainloop()
这段代码运行后就是一个图形界面如下,前提条件需要安装comtypes和tkinter,如果没有安装的,可以用命令安装一下就可以了:
pip install comtypes
先选择ppt文件,然后选择图片的输出目录,最后点击转换按钮,就可以实现将ppt转换成jpg图片,注意,如果本机运行的话,需要本机安装好了powerpoint才能正常运行。
另外如果需要将这个项目打包生成exe文件,也可以使用下面的命令将项目文件打包
pyinstaller --onefile --windowed your_script_name.py
确保安装了PyInstaller,才能正常运行上面的命令,如果没有安装的话,可以运行下面的命令实现。
pip install pyinstaller
运行后,就会在当前py文件目录下生成两个文件夹,
在dist文件夹中就可以看到生成的exe文件了。
程序运行完成后,在这个文件夹下就可以看到生成的图片了。
最后,也可以在这个代码基础上修改并添加更多的功能,比如添加选择转换相应的页数,转成一张长图等等,都可以用python实现,有兴趣的朋友可以在这段代码基础上修改就可以了。