通过python将PPT转换为PNG

时间:2010-03-14 19:37:06

标签: python powerpoint file-conversion

我想使用Python将PPT转换为png或其他图像格式。

这个问题已在SO上提出,但基本上建议在无头X服务器上运行OpenOffice,这在我上次使用它时是一种绝对的痛苦。 (主要是由于OO崩溃导致难以复制的错误。)

还有其他方法,(希望仅使用Linux CLI实用程序,并在它们之上使用纯Python?)

1 个答案:

答案 0 :(得分:2)

基本工作流程:

  • 使用PowerPoint或OpenOffice内置PDF转换器中的pdf打印机将您的ppt转换为pdf

  • 使用ghostscript将pdf转换为png或其他图片格式(gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=png16m -r100 -sOutputFile=out.png in.pdf

您可以使用Python来编写脚本(以及使用Uno / COM导航OOo / MSPP)或任何您想要的脚本。

据我所知,没有Python库处理PPT文件或将PDF文件转换为PNG。

对于OOo崩溃处理,我会捕获异常并在发生此类事件时尝试重新启动OOo(可能会跳过该文件,将其添加到需要手动处理的可疑文件列表中)。

您可能会发现这篇文章http://www.linuxjournal.com/node/1007788很有趣,因为它提供了一个类,该类使用现有的OOo实例以透明的方式连接或启动一个。它附带了一个xls的例子 - > csv转换(http://www.linuxjournal.com/content/convert-spreadsheets-csv-files-python-and-pyuno),可用作您想要尝试的转换的基础。