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