我有以下Jasper Report子报表.jrxml文件,它产生非常奇怪的结果。
返回的每一行数据都神秘地分成了两行。具体来说,location_name中的最后一个字符出现在新行上(除非数据中有逗号,在这种情况下,新行将从此处开始)。为什么会这样?
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports
http://jasperreports.sourceforge.net/xsd/jasperreport.xsd">
<queryString>
<![CDATA[SELECT substr(location_name, 1, 5) as location_name from location]]>
</queryString>
<field name="location_name" class="java.lang.String"/>
<detail>
<band height="25">
<textField>
<reportElement x="0" y="0" width="100" height="25"/>
<box topPadding="1"><topPen lineWidth="0.5"/></box>
<textElement>
<font fontName="Times New Roman" size="8"
isBold="true" pdfFontName="Helvetica-Bold"/>
</textElement>
<textFieldExpression class="java.lang.String">
<![CDATA[$F{location_name}]]>
</textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>
[一个可能的线索是,当我在Jaspersoft Studio中打开它时,收到警告,“ 不赞成使用pdf字体,而是用字体扩展名代替”。所以我尝试删除fontName和pdfFontName,而将textElement保留为:
...
<textElement>
<font size="8" isBold="true" />
</textElement>
...
这有助于每行数据现在显示在一行上,但是isBold无效。
除非有解决方案,没有人有一个如何在Jasper报告中加粗文本的示例吗?
我通过从jasperreports-4.0.2。jar升级到jasperreports-5.1.0。jar来解决此问题。