我正在使用 Microsoft Word 2007。我想将 Word 文档转换为 XSL-FO。网上有一些提示,但仅适用于 RenderX。Apache FOP 有这样的工具吗?
5 回答
RenderX有一组免费的XSLT 样式表,用于将 Microsoft 的 WordprocessingML 文档转换为 XSL FO (XSLFO)
这些公开可用的样式表可用于将 Microsoft 的 WordprocessingML 文档转换为 XSL FO (XSLFO)
您不必将生成的 XSL-FO 与 RenderX 一起使用。您可以运行它们以生成 XSL-FO 输出并在任何 XSL-FO 引擎(包括 Apache FOP)中呈现。
Antennahouse还有一个WordMLToFO 样式表,但它不是免费的(200 美元)
docx4j 使用 FOP 从 docx 创建 pdf。
XSLT 在这里,但您可能更喜欢从这个 webapp 开始,它可以从上传的 docx 发出 XSLFO。
它使用扩展函数来完成繁重的工作,因此它仅作为 docx4j 的一部分真正起作用,但它很容易获得并且 ASLv2 许可。
是的,RenderX 有他们的http://www.renderx.com/tools/word2fo.html但是许可证是有限制的,20070227 版本是针对 Word 2003 WordML 的(也许有一个更新的?它已经有一段时间了,因为我看着)
Word 可以自己完成。以下是微软的说明: http: //msdn.microsoft.com/en-us/library/office/aa537167%28v=office.11%29.aspx#officewordwordmltoxsl-fo_creatinganxslfodocumentfromword
这是所需 XSL - Word2FO.xsl 的下载链接:http: //www.microsoft.com/en-us/download/details.aspx?id= 16876
如果您想要 DOCX (Word 2007) 支持,您必须解压缩文件并合并各个资源才能使用样式表。这就是问题的一半,因为上次我检查样式表中存在严重的限制,例如样式/主题的处理、连续的部分等等。如果您负担得起,那么您可能需要一个商业DOCX 到 PDF 引擎。要记住的一件重要事情是,通过 XSL-FO 确实不可行,因为 XSL-FO 不提供对选项卡、图像周围文本的紧密包装或其他 Word 功能的支持。
不久前,我创建了一个更改 RenderX XSLT 的报告工具,该工具最初将 wordML 2003 转换为 XSLFO,以执行 wordML 2003 -> XSLT,后来与 XML 数据合并以最终生成带有模板 + 数据的 XSLFO。您需要在 word 中创建模板,然后将生成的 XSLT 导入 Web 应用程序并运行生成 XML 的查询并将其与您提供的模板合并。
https://github.com/juanmf/neatReports
文档
https://github.com/juanmf/neatReports/blob/master/doc/HowToReport.pdf