django / python:如何使用python将pptx / docx格式转换为PDF?

时间:2013-08-27 09:32:22

标签: python django pdf powerpoint openxml

首先,我同意这听起来像是一个过去曾多次被问过的问题。但是我在类似的问题中找不到任何与我相关的答案,所以我会尝试更具体。

我需要使用Python 将PPTX / DOCX文件转换为PDF,但我没有任何文件格式转换经验。我一直在寻找很多地方/论坛/网站,阅读了大量文档,并且遇到了一些有用的库(主要是 python-pptx pyPdf ),但我仍然不喜欢不知道从哪里开始。

在互联网上查看时,我可以看到许多网站提供文件格式转换作为付费服务,即使使用高级API:通过POST提交文件并获得转换后的PDF文件。这可能对我有用,但我真的很有兴趣自己编写从OOXML到PDF的转换工作代码。

你会如何开始这样做?或者我自己不可能?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

经过一些研究并在python-pptx的创建者的帮助下,我能够使用虚拟机写入PowerPoint COM界面。

如果有人读了这个帖子,我就是这样设法完成的: - 在其上安装安装了Microsoft Windows / Office的VM; - 在VM上安装Python,Django和win32com库。

通过简单的POST请求将文件从原始Django项目本地发送到虚拟机(位于同一网络上)。使用win32com.client(这只是对win32com.client库的一个简单调用)在VM上转换文件,然后作为对原始Django视图的响应发送回来,该视图反过来处理响应。

注意:我花了一些时间才意识到我需要使用@csrf_exempt装饰器才能使用此设置。