【问题标题】:How to convert PowerPoint slides into images in the server?如何在服务器中将 PowerPoint 幻灯片转换为图像?
【发布时间】:2011-08-02 13:38:34
【问题描述】:
PowerPoint 可以选择以其他格式保存文件。使用此功能可以将幻灯片转换为图像。
我想开发一个应用程序,可以将 .ppt 文件上传到我的服务器,该应用程序会将幻灯片转换为图像,而无需任何人工干预。
我能指点一下吗?怎么做?
提前致谢。
【问题讨论】:
标签:
.net
flash
powerpoint
openxml
【解决方案1】:
Microsoft 不建议并且不支持在服务器上使用 Office 自动化。也就是说,它当然可以做到。您必须了解 PowerPoint 一次只允许一个自身实例;您需要编写您的应用程序,以免尝试调用 PPT 的多个实例。
一种方法是编写一个“观察者”应用程序,每隔 n 分钟轮询一个目录中的 PPT 文件。当它找到它们时,它会启动 PowerPoint,一次加载一个文件,为每个文件加载一个文件,然后导出,然后关闭文件。完成所有文件后,它会关闭 PowerPoint,然后返回等待更多文件出现。
【解决方案2】:
由于 PowerPoint 是一项 Microsoft 技术,我肯定会选择 Microsoft 解决方案。
您可以使用Fluorine 在 C# 中设置远程服务并在服务器端进行转换。
这是一篇关于如何在 C# 中从 .ppt 文件中提取幻灯片的文章:
我确信还有其他方法可以实现这一点,但这似乎是最实用的方法。
干杯
【解决方案4】:
我尝试了 ASPOSE,确实效果很好。问题是 ASPOSE 的许可成本高得离谱。他们根本不关心有想法并想要测试它的小家伙,甚至是小公司。他们根据公司的开发人员数量收取许可费。
鉴于 Microsoft 没有提供真正的解决方案和替代方案(COM 自动化非常糟糕并且内存泄漏很大),我们不得不使用 OpenXML。
它“完成了工作”,但它可能是最严格和最不友好的库之一,但它的成本与 ASPOSE 不同。
Microsoft 应该对 OpenXML 库投入一点心血。这无疑会给 Office 开发社区带来额外的优势。 (至少那些不使用 SharePoint 支持的任何东西的人)