无Office转换Office文档

我们需要将所有MS Office文档转换为PDF,TIFF或任何类似的图像格式,而不会丢失格式(这些是无法篡改的官方文档)。

如果没有在可以执行此操作的计算机上安装Office,有没有办法做到这一点? 理想情况下,这将在服务器上运行并运行multithreading,而无需Office Automation的开销。

您可以使用Aspose.NET等第三方库进行文档转换,但我担心 – 如果高保真渲染至关重要 – 则无法使用原始应用程序。

Microsoft Office提供了一个转换器API,允许在没有安装Office的情况下进行转换。 但是,您不仅可能面临许可证问题(IANAL),此API仅支持不需要呈现文档的文本处理格式的转换(例如RTF – > DOC,DOC – > DOCX),因此它不是真的你的选择。

更新:可能最好的选择是查看SharePoint 2010转换引擎,它完全是为自动(服务器端)文档转换而制作的。 它虽然很硬(硬件和价格都很高)所以对你的用例来说可能有些过分。

如果这个应用程序将在专用机器上运行(即机器唯一的工作是转换一个巨大的Office文档集合),最安全的选择可能是以单线程方式使用Office自动化并让应用程序愉快地转换一个文件一次。 multithreadingOffice Automation应用程序可能会以更快的速度(特别是在多核处理器上)转换文档,直到服务器崩溃。

Office Open XML是一种非Office自动化替代方案,但由于我目前正在努力在导出到相对较小的Excel文件(~1MB)时产生OutOfMemoryException错误,我真的不推荐它。