有人能用我的JasperReport建议解决这个问题吗?我正在使用iReport 4.4.1编写一份报告,其中还包含大量静态合同文本,我将其放在Jasper模板的文本框中。
当渲染到rtf并在MS Word中读取时,文本框正确地从第一页的一半开始,而另一个不同的文本框出现在第二页的顶部。两个方框中的所有文字都是正确的。
但是当我在第一页的文本框顶部插入行时,底部的溢出不会移动到第二页上的框中,它就会消失。
我真的希望文本直接进入Word文档,而不是文本框。
我错过了什么吗?
报告样本:
<jasperReport xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="test" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="259"/>
<queryString language="xPath">
</queryString>
<field name="para1" class="java.lang.String">
<fieldDescription>/study/para1</fieldDescription>
</field>
<background>
<band splitType="Stretch"/>
</background>
<detail>
<band height="802" splitType="Stretch">
<textField isStretchWithOverflow="true">
<reportElement stretchType="RelativeToBandHeight" isPrintRepeatedValues="false" x="5" y="10" width="540" height="512"/>
<textElement/>
<textFieldExpression>$F{para1}</textFieldExpression>
</textField>
</band>
</detail>
<summary>
<band splitType="Stretch"/>
</summary>
</jasperReport>
答案 0 :(得分:2)
您应该将 net.sf.jasperreports.export.docx.flexible.row.height
属性添加到包含 true
值的报告中。
样本:
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport ...>
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<property name="net.sf.jasperreports.export.docx.flexible.row.height" value="true"/>
有关此媒体资源的详情,请here。