【问题标题】:Why Docx4j is not removing Content Controls from docx files?为什么 Docx4j 不从 docx 文件中删除内容控件?
【发布时间】:2016-01-12 16:10:57
【问题描述】:

我正在尝试使用 DOcx4J 合并 XML 和 docx。但即使我使用标志 Docx4J.FLAG_BIND_REMOVE_SDT Docx4J 也不会从 docx 文件中删除内容控件。我正在使用下面的代码。

WordprocessingMLPackage wordprocessingMLPackage = Docx4J.load(new File(docx_template_location));
FileInputStream xmlStream = new FileInputStream(new File(xml_data_location));
Docx4J.bind(wordprocessingMLPackage, xmlStream, Docx4J.FLAG_BIND_INSERT_XML & Docx4J.FLAG_BIND_REMOVE_SDT);
Docx4J.save(wordprocessingMLPackage, new File(required_outputfile_name), Docx4J.FLAG_SAVE_ZIP_FILE);

【问题讨论】:

    标签: java xml docx docx4j


    【解决方案1】:

    见this commit

    在此之前(在 3.3 分支上),它仅删除了 OpenDoPE 内容控件

    【讨论】:

    • 谢谢。有没有办法使用 Docx4J 从 MS Word docx 中删除内容控件,如果没有,我们什么时候可以期待该功能? (因为您是该库的创建者)
    • 您可以使用 3.3 nightly build,将代码反向移植到 3.2.x(足够简单),或者只复制 2 个文件(java 代码和 xslt),并在您自己的代码中适当地重命名。
    • 我用的是3.3;现在 DOcx4J 没有将 XML 与 docx 模板合并。我没有得到包含合并数据的输出 docx。我得到一个 pdf,但它的大小为 0KB。
    • 3.3 当前的 GitHub 源代码对我来说似乎很好;如果您仍然遇到问题,您应该在此处或在 docx4j 论坛中创建另一个问题。您需要包含您的代码和输入。
    • 顺便说一下,这里是当前的 3.3.0 发行版;请阅读更改日志文件! docx4java.org/docx4j/…
    猜你喜欢
    • 1970-01-01
    • 2015-12-27
    • 1970-01-01
    • 2014-01-22
    • 2020-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-17
    相关资源
    最近更新 更多