0

我正在将 iReport 设计的模板导出为 HTML,当在电子邮件中呈现为正文时,它会显示额外的行空间,如下所示

Option 1: Delivery in Evening (17:00-21:00).



选项 2:周六交货。

如何防止行空格,使其如下所示

Option 1: Delivery in Evening (17:00-21:00).
Option 2: Delivery on Saturday.

仅当从 java 导出到 HTML 时才会发生这种情况。PDF导出没问题。提前感谢任何帮助和感谢。

这是我的 JRXML:

<?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" name="PreAlert" language="groovy" pageWidth="595" pageHeight="842" whenNoDataType="AllSectionsNoDetail" columnWidth="591" leftMargin="2" rightMargin="2" topMargin="5" bottomMargin="5" isIgnorePagination="true" uuid="59a0a3f5-2869-4b8b-8aae-a29eb50ecc64">
    <queryString>
        <![CDATA[]]>
    </queryString>
    <background>
        <band splitType="Stretch"/>
    </background>
    <title>
        <band height="790" splitType="Prevent">
            <staticText>
                <reportElement uuid="7e37eeb2-c2c2-40cb-94f1-585663f21321" x="34" y="73" width="500" height="17" isRemoveLineWhenBlank="true"/>
                <textElement>
                    <font fontName="SansSerif" size="11" isBold="false" pdfEncoding="Identity-H"/>
                </textElement>
                <text><![CDATA[Option 2: Delivery on Saturday]]></text>
            </staticText>
            <staticText>
                <reportElement uuid="0533379c-19e6-47e0-8dcc-14cbb9d1798e" x="34" y="54" width="500" height="17" isRemoveLineWhenBlank="true"/>
                <textElement>
                    <font fontName="SansSerif" size="11" isBold="false" pdfEncoding="Identity-H"/>
                </textElement>
                <text><![CDATA[Option 1: Delivery in Evening (17:00-21:00).]]></text>
            </staticText>
            <line>
                <reportElement uuid="09813fb9-7535-47da-83df-10b5ca5d174b" positionType="Float" x="15" y="26" width="540" height="1"/>
            </line>
        </band>
    </title>
</jasperReport>
4

2 回答 2

0

经过长时间的挣扎和折腾,最终罪魁祸首归结为JRHtmlExporter出口商

如果我使用以下代码导出到 html,则会有额外的换行符

JRHtmlExporter exporter = new JRHtmlExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRHtmlExporterParameter.IS_OUTPUT_IMAGES_TO_DIR, Boolean.FALSE);
exporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN, Boolean.FALSE);
exporter.setParameter(JRHtmlExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE);
exporter.setParameter(JRHtmlExporterParameter.FRAMES_AS_NESTED_TABLES, Boolean.FALSE);
exporter.setParameter(JRHtmlExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.TRUE);
exporter.setParameter(JRExporterParameter.OUTPUT_FILE, destFile);

exporter.exportReport();

但是,当我使用直接导出时,它正在工作。不知道为什么行为会有所不同

String htmlFile = JasperExportManager.exportReportToHtmlFile(jrPrintFile);

如果我通过电子邮件正文发送此 htmlFile 内容,则没有额外的换行符。
最大的问题是为什么,我在这方面做了很长时间的家庭工作。

于 2013-09-28T19:01:53.273 回答
0

尝试将这些复选框设置为选中:

  • 空白时删除行

  • 为空时为空

在您的 iReport 中

于 2013-09-27T08:52:18.927 回答