How to convert a .pptx to .pdf using Python

丶灬走出姿态 提交于 2019-12-03 11:52:52

I found the answer with the help of this post and the answer from this question. Note that comtypes is only available for Windows.

import comtypes.client

def PPTtoPDF(inputFileName, outputFileName, formatType = 32):
    powerpoint = comtypes.client.CreateObject("Powerpoint.Application")
    powerpoint.Visible = 1

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

unoconv is a great tool to perform this task and it is indeed build in python. Regarding your problem, it might be related to a recurring problem with the way the python interpreter is set in the main unoconv file after it has been installed.

To run it with python3 interpreter, replace #!/usr/bin/env python with #!/usr/bin/env python3 or #!/usr/bin/python3 in unoconv file (/usr/bin/unoconv).

one liner:

sudo sed -i -e '1s:#!/usr/bin/env python$:#!/usr/bin/env python3:' /usr/bin/unoconv

You could also symlink /usr/bin/unoconv to /usr/local/bin/unoconv.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!