Jasper reports PDF上汉字的带溢出的JasperReport拉伸

Jasper reports PDF上汉字的带溢出的JasperReport拉伸,jasper-reports,Jasper Reports,我正在编写jasper报告,用汉字动态拉伸文本字段,但由于多个测试用例而失败。从iReport生成的本地PDF结果看起来不错,但在我的测试JBoss服务器上失败了。我相信这个问题与字体有关,并通过阅读参考资料加以确认。以下是我设置测试环境和测试用例的步骤: 将字体(Arial Unicode MS和Ming(ISO 10646))安装到java中 通过打印出java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailab

我正在编写jasper报告,用汉字动态拉伸文本字段,但由于多个测试用例而失败。从iReport生成的本地PDF结果看起来不错,但在我的测试JBoss服务器上失败了。我相信这个问题与字体有关,并通过阅读参考资料加以确认。以下是我设置测试环境和测试用例的步骤:

  • 将字体(Arial Unicode MS和Ming(ISO 10646))安装到java中
  • 通过打印出java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames()确认字体安装正确
  • 使用iReport 3.6.1创建字体扩展并添加到类路径
testing.Jrxml

<detail>
<band height="80" splitType="Stretch">
<textField isStretchWithOverflow="true" isBlankWhenNull="false">
    <reportElement key="textField" positionType="Float" stretchType="RelativeToTallestObject" x="246" y="35" width="150" height="20" isPrintWhenDetailOverflows="true"/>
        <textElement textAlignment="Center" verticalAlignment="Middle">
            <font fontName="Arial Unicode MS"/>
        </textElement>
    <textFieldExpression class="java.lang.String"><![CDATA["扭扭車,盒子 ,淨水器,膠水,汽車啟動應急電源,電池,麥克風asdfkljhqwerpouikljhsdfgklhn,mhjzkxlchuioe"]]></textFieldExpression>
</textField>
</band>
</detail>

我尝试过的

  • 添加pdfFontName=Arial Unicode MS并设置pdfEncoding=Identity-H
  • 使用字体(ISO 10646)
  • 用英文填充的拉伸文本字段(成功)
  • 在汉字的中间加上多个“\n”(拉伸成功但难以控制)
服务器环境

AIX7.1和JasperReport 3.6.1

欢迎对进一步测试提出建议

提前谢谢