from win32com.client import gencache
from win32com.client import constants, gencache
from win32com.client import Dispatch
import glob
import os
import time
def convertfile2pdf(file_path, pdf_path,file_type):
'''
文件转化PDF方法,仅内部调用
'''
if file_type == 'word':
mode = 1
if mode == 1:
word = Dispatch('Word.Application')
word.Visible = False # 后台运行,不显示
word.DisplayAlerts = 0 #不警告
doc = word.Documents.Open(file_path)
doc.SaveAs(pdf_path, FileFormat=17)
doc.Close()
word.Quit()
return 1
else:
word = gencache.EnsureDispatch('Word.Application')
doc = word.Documents.Open(file_path, ReadOnly=1)
doc.ExportAsFixedFormat(pdf_path,
constants.wdExportFormatPDF,
Item=constants.wdExportDocumentWithMarkup,
CreateBookmarks=constants.wdExportCreateHeadingBookmarks)
word.Quit(constants.wdDoNotSaveChanges)
return 1
elif file_type == 'excel':
excel = Dispatch('Excel.Application')
excel.Visible = False
excel.DisplayAlerts = 0
xls = excel.Workbooks.Open(file_path)
xls.ExportAsFixedFormat(0, pdf_path)
xls.Close()
excel.Quit()
return 1
elif file_type == 'ppt':
p = Dispatch("PowerPoint.Application")
p.Visible = False
p.DisplayAlerts = 0
ppt = p.Presentations.Open(file_path, False, False, False)
ppt.ExportAsFixedFormat(pdf_path, 2, PrintRange=None)
p.Quit()
return 1
else:
return -1
def file2pdf(file_path, pdf_path = None , mode = 'cover'
Python 实现office(doc,Excel,ppt)文件转PDF格式
最新推荐文章于 2023-11-18 17:53:36 发布