【问题标题】:Jasper report formatting and font issuesJasper 报告格式和字体问题
【发布时间】:2020-04-01 23:18:06
【问题描述】:

我有以下 Jasper 报告子报告 .jrxml 文件,它产生了非常奇怪的结果。

返回的每一行数据都会在报告中神秘地分成 2 行。具体来说,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 字体并由字体扩展替换”。所以我尝试删除 fontNamepdfFontName,只留下 textElement:

                ...
                <textElement>
                    <font size="8" isBold="true" />
                </textElement>
                ...

这有助于每行数据现在出现在一行中,但 isBold 没有任何效果。

除非有解决方案,是否有人提供如何在 Jasper 报告中加粗文本的示例?

【问题讨论】:

    标签: jasper-reports export-to-pdf


    【解决方案1】:

    我通过从 jasperreports-4.0.2.jar 升级到 jasperreports-5.1.0.jar 解决了这个问题em>。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-10
      • 2019-05-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-27
      • 2014-07-19
      • 1970-01-01
      相关资源
      最近更新 更多