代码之家  ›  专栏  ›  技术社区  ›  agiliq

通过python将ppt转换为png

  •  4
  • agiliq  · 技术社区  · 15 年前

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

    这个问题已经被问到了,但是基本上还是建议在HeadlessX服务器上运行OpenOffice,这在我上次使用它时是一个非常痛苦的问题。(主要是由于OO崩溃导致的错误难以复制。)

    是否还有其他方法(希望仅使用Linux CLI实用程序,以及上面的纯Python)?

    1 回复  |  直到 15 年前
        1
  •  2
  •   gurney alex    15 年前

    基本工作流程:

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

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

    您可以使用python编写脚本(并使用uno/com引导oo/mspp),或者您想要的任何脚本。

    据我所知,没有处理ppt文件或将pdf文件转换为png的python库。

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

    你可以找到这篇文章 http://www.linuxjournal.com/node/1007788 有趣的是,它提供了一个类,该类使用现有的OOO实例以透明的方式连接或启动一个实例(如果需要)。它附带了一个XLS->csv转换示例( http://www.linuxjournal.com/content/convert-spreadsheets-csv-files-python-and-pyuno )它可以用作您要尝试的转换的基础。