Reference
前提
- 安装
comtypes
库,需要用其操纵Microsoft PowerPoint.命令行输入
pip install comtypes
即可,或者用conda
. - Python 3.6 or higher,因为其中使用
pprint
来打印。如果低于这一版本,可以删除pprint
的引入,把调用的pprint
换成print
.
使用
- 采用了模仿Python解释器的方式,每次输入一个文件夹路径,然后转换其下所有的
.ppt/.pptx/.pptm
,并且移动到/ppt
文件夹。 - 如果不想要移动的功能,可以注释掉
processDir
中moveSingle
的调用。 - 因为Microsoft PowerPoint本身的限制,一定要显示一个Microsoft PowerPoint的窗体。请不要手动关闭该窗体,否则连续转换和退出时会报错(手动关闭Microsoft PowerPoint和脚本也可以完全退出)。
- 运行该脚本,显示欢迎界面。
- 输入一个路径,回车,将会自动转换。
- 输入下一个路径,将会接着转换。
- 输入
.exit
,程序会自动关闭Microsoft PowerPoint。
代码
import comtypes.client
import os
import shutil
from pprint import pprint
class ppt2pdf:
def __init__(self):
print("PPT to PDF converter interactive, credit to Lupinus_Linn.")
print("The script has to show a Microsoft PowerPoint window due to techique requirement.")
print("Input a folder, will convert all ppt/pptx/pptm inside and move it to {workingDir}/ppt folder.")
print("When you finished, key in '.exit' to exit.")
self