我正在使用xdocreport尝试Freemarker的hello世界,并在docx文件中设置一个条件,但它不起作用。我试过了:
[#if name?has_content]
Sdfsdfsdf sdf sdf
[/#if]
<#if name?has_content>
Sdfsdfsdf sdf sdf
</#if>
[#if name??]
Sdfsdfsdf sdf sdf
[/#if]
<#if name??>
Sdfsdfsdf sdf sdf
</#if>
替换字段工作正常,但条件字段工作不正常。输出与输入完全相同。
您的问题来自于不使用mergefield的docx。您必须使用mergefield来编写任何Freemarker指令,否则MS Word将使用XML字符来转义您的指令(并且您的Freemarker指令不会像您的问题那样工作)。
请注意,您已将此问题发布在https://code.google.com/p/xdocreport/issues/detail?id=285