把office文件转为PDF格式的文件,可以避免文件的篡改,保证文件的安全性和可靠性;可以避免在手机或者平板上显示时出现凌乱、缺少字体的现象。pdf文件既保证的文件样式的美观,又保证了文档的安全性。
将Word、Excel、PowerPoint的默认文件保存格式转换为PDF的库非常多,pywin32库可以支持office所有的组件,这个库只支持windows系统。
pywin32库的安装和导入
库的名字是:pywin32
安装模块是:pip install pypiwin32
导入模块是:import win32com
自动化转为PDF
word文件转为pdf
实现步骤:
- 进入到word文件所在的文件夹
- 使用office的word组件打开word文件
- 使用“文件另存为”功能,保存为pdf,并指定保存的路径
- 保存并关闭word文件,退出word进程。
代码实现步骤:
- 调用DispatchEx()打开word程序
- Open()函数打开word文件
- 使用ExportAsFixedFormat()函数将word文件另存为pdf文件
- 使用Close()和Quit()关闭word文件并结束word进程
参考文档:https://docs.microsoft.com/zh-cn/office/vba/api/word.wdexportformat
代码实现过程如下:
excel文件转为pdf
Excel表格默认保存的文件格式为xls或xlsx,转换为pdf的思路跟步骤跟word相同。
代码实现步骤:
- DispatchEx()函数中,excel使用了“Excel.Application”作为参数,让pywin32库启动Excel进程,并读取“**.xlsx”文件
- ExportAsFixedFormat函数的第一个参数从pdf路径变为了保存的类型
参考文档:https://docs.microsoft.com/zh-cn/office/vba/api/excel.xlfixedformattype
PPT文件转为pdf
PPt文件默认保存的文件格式为ppt或pptx,转换为pdf的思路跟步骤跟word相同。
参考文档:
https://docs.microsoft.com/zh-cn/office/vba/api/powerpoint.presentation.exportasfixedformat
任意格式批量转换为PDF
把Word、Excel、PowerPoint的默认文件格式批量转换为PDF文件。
不同格式的文件,调用的函数是不一样的,如果为ppt文件,调用ppt_to_pdf,需要先判断文件的类型(endswith)。