将 pptx 转换为 PNG

convert pptx into PNGs

是否可以使用 Python 将每张幻灯片的 pptx 文件转换为 png 文件?

我正在考虑将 pptx 转换为 pdf,然后将每个页面转换为 png,但不确定这是否是最佳方式。

在 windows 上使用 comtypes 库是可能的。但是对于 unix 发行版来说就不是这样了,因为 unix 不支持 comtypes。对于windows,如果你想不通:

https://gist.github.com/littmus/6496277

还有 python-pptx 库,但它没有允许截屏的权限(如果我错了请纠正我。)与此同时,根据我的说法,这是一个非常有趣的问题,因为有很多相同的线程,如果你明白了,请 post 在这里回答。

您也可以使用 python-pptx-interface - 它与 Mukesh 链接的内置函数类似:

from pptx_tools.utils import save_pptx_as_png

# use full path for pptx_filename
save_pptx_as_png(folder_to_save_pngs, pptx_filename, overwrite_folder=True)  

overwrite_folder=如果文件夹已经存在,则需要 True。在这种情况下,PNG 文件可能会被覆盖。

为了建立 natter1 的回答,我必须做两件事才能让 save_pptx_as_png 在 Windows 上工作:

  1. 安装 comptypes 库(即 pip install comtypes)
  2. 使用反斜杠而不是 Python 编码中常见的正斜杠来格式化我的 folder_to_save_pngs 和 pptx_filename 路径。例如C:\users\me\documents\foo.pptx 而不是 C:/users/me/documents/foo.pptx

如果不这样做,您可能会 运行 出现错误,例如“保存 PNG 需要 Comptype 模块”或 COMError“系统找不到指定的路径”。