JAVA在文本框中操作docx DOCVARIABLE

时间:2017-10-09 13:15:05

标签: java ms-word apache-poi

我正在开发一个JAVA服务器端应用程序,它将在Microsoft Word Docx文件中填写一些文本。 Docx文件包含多个文本框,每个文本框都填充了DOCVARIABLE,并调整了文本样式以使表单看起来很棒。

我已经尝试过Apache POI,它确实找到了文本框,但无法修改DOCVARIABLES。即使我要用占位符文本替换DOCVARIABLES,POI也不会让我修改文本框中的文本。由于这是一个服务器端应用程序,我无法采用需要完整msword.exe运行的C#解决方案。

有人能说明我应该如何进行吗?非常感谢。

1 个答案:

答案 0 :(得分:0)

我认为经过一段时间的研究后我找到了这个问题的答案。

Docx4j是在此方案中使用的包。它提供了遍历文档和掌握任何容器中的文本的功能。然后需要修改docx文件,而不是使用DOCVARIABLES,使用MERGEFIELD或纯文本并执行自己的技巧。