对于我正在处理的项目,我需要将WordML流转换为Word 2002兼容的.doc格式(不要问为什么 - 但是相当大的一组用户仍然在Word 2002上升级到最新版本不可行直到2010年第四季度)。我试图研究很多选择,并且大多数都走到了尽头。
我的用例是现有的基于Java的Web服务(在Tomcat下的Solaris上运行),根据用户的请求,它可以调用第三方服务。此3rdParty服务将返回pdf文档和WordML文档。然后,我们需要将Word ML文档转换为Word 2002格式,我们的Web服务更新页面以链接到pdf和& word 2002文档,然后可以由Web服务的用户打开。
Aspose.Words for Java是我最好的选择,但它也为WordML返回了UnsupportedDocumentFormat
异常。首先我认为它可能是我的文档,但所有其他文档都失败了然后跟进Aspose显示尽管文档,当前版本不支持Java中的WordML(http://www.aspose.com/community/forums/248442/wordml-support/showthread.aspx#248442)
我会选择编写.Net服务来进行转换 - 但是在那里也有一些问题 - (a)我的服务[现有]在Solaris Box上运行(b)MS不推荐单词由于多线程性能差而以这种方式实现自动化(c)使用Aspose.Words for .Net - 但这意味着显着的硬件成本+ .Net许可证等。
我探索了找到WordML-> RTF转换的可能性的可能性,但也找不到合适的库。除了WordML会包含一些我们还不知道RTF支持的大量图表之外,我们无法找到,因为目前只有WordML可用于Word 2002安装。
所以,它涉及到: 是否有除Aspose.Words for Java之外的任何库可以进行WordML-> Word2002 [或rtf]转换,它不依赖于Windows主机做任何事情(单独留下实际的MS Word安装)。
长期提问道歉,但我真的无法找出任何选择。任何帮助/建议/指向合适的库的指针都将非常有用。付费图书馆可能没问题,只要我们可以选择先试用,以便为项目赞助商提供案例。
答案 0 :(得分:1)
您可以使用Apache POI来满足您的需求。它有助于开发人员读写Microsoft OLE 2 Compound Document
。但它doesn't read or write RTF Documents
。您可以read from WordML
和write as Word 2002 format
。试一试......
答案 1 :(得分:0)
docx4j可以阅读2007 WordML。您可以尝试使用它通过FOP或iText编写RTF(我自己没有尝试过)。