批量将ppt转换为pdf的Python代码 只要27行!


Posted in Python onFebruary 26, 2018

这是一个Python脚本,能够批量地将微软Powerpoint文件(.ppt或者.pptx)转换为pdf格式。

使用说明

1、将这个脚本跟PPT文件放置在同一个文件夹下。
2、运行这个脚本。

全部代码

import comtypes.client
import os

def init_powerpoint():
 powerpoint = comtypes.client.CreateObject("Powerpoint.Application")
 powerpoint.Visible = 1
 return powerpoint

def ppt_to_pdf(powerpoint, inputFileName, outputFileName, formatType = 32):
 if outputFileName[-3:] != 'pdf':
 outputFileName = outputFileName + ".pdf"
 deck = powerpoint.Presentations.Open(inputFileName)
 deck.SaveAs(outputFileName, formatType) # formatType = 32 for ppt to pdf
 deck.Close()

def convert_files_in_folder(powerpoint, folder):
 files = os.listdir(folder)
 pptfiles = [f for f in files if f.endswith((".ppt", ".pptx"))]
 for pptfile in pptfiles:
 fullpath = os.path.join(cwd, pptfile)
 ppt_to_pdf(powerpoint, fullpath, fullpath)

if __name__ == "__main__":
 powerpoint = init_powerpoint()
 cwd = os.getcwd()
 convert_files_in_folder(powerpoint, cwd)
 powerpoint.Quit()

源码地址

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python通过scapy获取局域网所有主机mac地址示例
May 04 Python
使用Python发送各种形式的邮件的方法汇总
Nov 09 Python
Python cx_freeze打包工具处理问题思路及解决办法
Feb 13 Python
python 简单的绘图工具turtle使用详解
Jun 21 Python
python使用threading获取线程函数返回值的实现方法
Nov 15 Python
numpy.ndarray 交换多维数组(矩阵)的行/列方法
Aug 02 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
Aug 05 Python
Linux下Pycharm、Anaconda环境配置及使用踩坑
Dec 19 Python
Python实现的多进程拷贝文件并显示百分比功能示例
Apr 09 Python
Python中remove漏删和索引越界问题的解决
Mar 18 Python
Python中过滤字符串列表的方法
Dec 22 Python
总结python多进程multiprocessing的相关知识
Jun 29 Python
python 3利用Dlib 19.7实现摄像头人脸检测特征点标定
Feb 26 #Python
python3利用Dlib19.7实现人脸68个特征点标定
Feb 26 #Python
python微信跳一跳系列之棋子定位颜色识别
Feb 26 #Python
python微信跳一跳系列之棋子定位像素遍历
Feb 26 #Python
python3.6+opencv3.4实现鼠标交互查看图片像素
Feb 26 #Python
python微信跳一跳系列之自动计算跳一跳距离
Feb 26 #Python
python微信跳一跳系列之色块轮廓定位棋盘
Feb 26 #Python
You might like
PHP遍历数组的几种方法
2012/03/22 PHP
php操作(删除,提取,增加)zip文件方法详解
2015/03/12 PHP
PHP实现bitmap位图排序与求交集的方法
2016/07/28 PHP
让input框实现类似百度的搜索提示(基于jquery事件监听)
2014/01/31 Javascript
jquery的ajax跨域请求原理和示例
2014/05/08 Javascript
Javascript中的关键字和保留字整理
2014/10/16 Javascript
jQuery实现360°全景拖动展示
2015/03/18 Javascript
JS中获取函数调用链所有参数的方法
2015/05/07 Javascript
jquery插件jquery.LightBox.js实现点击放大图片并左右点击切换效果(附demo源码下载)
2016/02/25 Javascript
详细谈谈javascript的对象
2016/07/31 Javascript
JS双击变input框批量修改内容
2016/12/12 Javascript
高效的jQuery代码编写技巧总结
2017/02/22 Javascript
jQuery插件HighCharts绘制的2D堆柱状图效果示例【附demo源码下载】
2017/03/14 Javascript
ES6中的箭头函数实例详解
2017/04/06 Javascript
webpack3+React 的配置全解
2017/08/21 Javascript
nodejs使用redis作为缓存介质实现的封装缓存类示例
2018/02/07 NodeJs
详解 微信小程序开发框架(MINA)
2019/05/17 Javascript
[05:05]给小松五分钟系列 第二期介绍为什么打DOTA2
2014/07/02 DOTA
[00:17]DOTA2荣耀之路5:It’s a disastah!
2018/05/28 DOTA
python中二维阵列的变换实例
2014/10/09 Python
基于python的多进程共享变量正确打开方式
2018/04/28 Python
python3实现指定目录下文件sha256及文件大小统计
2019/02/25 Python
简单介绍python封装的基本知识
2019/08/10 Python
python学生管理系统的实现
2020/04/05 Python
python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式
2020/05/16 Python
python基于pexpect库自动获取日志信息
2021/02/01 Python
简历自我评价怎么写呢?
2014/01/06 职场文书
刚毕业大学生自荐信范文
2014/02/20 职场文书
21岁生日感言
2014/02/27 职场文书
小学一年级学生评语
2014/04/22 职场文书
企业党建工作总结2015
2015/05/26 职场文书
2015年度绩效考核工作总结
2015/05/27 职场文书
2016年习总书记讲话学习心得体会
2016/01/20 职场文书
python执行js代码的方法
2021/05/13 Python
python中subplot大小的设置步骤
2021/06/28 Python
vue elementUI表格控制对应列
2022/04/13 Vue.js