我正在尝试使用 python 和 win32com 将 .pptx 文件转换为 .pdf。我正在使用的代码如下所示:
ppoint = win32.gencache.EnsureDispatch("Powerpoint.Application")
ppoint.Visible = True
pres = ppoint.Presentations.Open(PPT_FILE_NAME)
pres.ExportAsFixedFormat(PDF_FILE_NAME, 2, 0, 0, 1, 1, False, 1, False, False, False,False)
问题是 ExportAsFixedFormat 抛出错误:
Traceback(最近一次调用最后一次):文件“converter.py”,第 30 行,在 pres.ExportAsFixedFormat(PDF_FILE_NAME2, 2, 0, 0, 1, 1, False, 1, False, False, False,False) 文件“ D:\applics\Python\lib\site-packages\win32com\gen_py\91493440-5A91-11CF-8 700-00AA0060263Bx0x2x11_Presentation.py”,第 112 行,在 ExportAsFixedFormat,KeepIRMSettings,DocStructureTags,BitmapMissingFonts,UseISO19005_1,Exte :\applics\Python\lib\site-packages\win32com\client__init__.py",第 4 59 行,在ApplyTypes self. oleobj .InvokeTypes(dispid, 0, wFlags, retType, argTypes, *args), TypeError: Python 实例无法转换为 COM 对象
我知道我可以使用 SaveAs 作为解决方法,但它的功能远不如 ExportAsFixedFormat。所以问题是:我该如何解决上面的错误?
我确实在 StackOverflow 上遇到了类似的问题,但那里发布的解决方案没有帮助。
我在 Win7 x64 下使用 Python 3.3.2 和 Office 2013。
谢谢!