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 がエラーをスローすることです。
トレースバック (最新の呼び出しが最後): ファイル "converter.py"、30 行目、pres.ExportAsFixedFormat(PDF_FILE_NAME2, 2, 0, 0, 1, 1, False, 1, False, Fal se, False,False) ファイル " D:\applics\Python\lib\site-packages\win32com\gen_py\91493440-5A91-11CF-8 700-00AA0060263Bx0x2x11_Presentation.py"、112行目、ExportAsFixedFormat、KeepIRMSettings、DocStructureTags、BitmapMissingFonts、UseISO19005al_1、Exte rDExporter" :\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 を使用しています。
ありがとうございました!