excel - iReport(JasperReports)额外行问题

标签 excel jasper-reports ireport

当我从数据库导入数据并在 Excel 工作表中格式化报告时,数据之间出现了额外的空行。

编辑(评论中的澄清):Excel 中的输出显示记录之间有一个额外的空白行,字段之间有一个额外的空白列。

最佳答案

  • 添加net.sf.jasperreports.export.xls.remove.empty.space. Between.columnsnet.sf.jasperreports.export.xls.remove.empty.space. Between.rows 属性到报告模板。

net.sf.jasperreports.export.xls.remove.empty.space. Between.columns - 指定是否空的间隔柱是否应该删除。

net.sf.jasperreports.export.xls.remove.empty.space. Between.rows - 指定是否空的间隔行是否应该删除。

示例:

<jasperReport ...>
    <property name="ireport.zoom" value="1.0"/>
    <property name="ireport.x" value="0"/>
    <property name="ireport.y" value="0"/>
    <property name="net.sf.jasperreports.export.xls.remove.empty.space.between.columns" value="true"/>
    <property name="net.sf.jasperreports.export.xls.remove.empty.space.between.rows" value="true"/>

有关配置属性的信息是here .

  • 您可以为textField元素设置isRemoveLineWhenBlankisBlankWhenNull来隐藏空白行。

如果当前 textField 为空,如何删除整行的示例:

<textField isBlankWhenNull="true">
    <reportElement x="0" y="0" width="100" height="20" isRemoveLineWhenBlank="true"/>
    <textElement/>
    <textFieldExpression><![CDATA[$F{field}]]></textFieldExpression>
</textField>
  • 另一个假设是更改 Band 中所有 textField(或/和 staticText)元素的高度。

如果是这种设计:

design with a space between textField and the band's boundary

任意两行之间都会有一个空格。

如果是这种设计(textField 高度等于Band 高度): the textfield height is equal to the band's height

每行都将位于另一行的正下方。

关于excel - iReport(JasperReports)额外行问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8354126/

相关文章:

vba - 通过VBA获取子文件夹名称和文件名

regex - 如何使用函数或正则表达式从单元格中删除所有数字?

vba - 具有结构的 VBA 中的 IIF

jasper-reports - Ireport 5.0 多表导出到Excel

java - iReport 和外部对象

sql - 加入第三个表以提取数据

java - jasper ireport 列中的字符串列表

java - Tomcat下加载一个jrxml文件

java - 使用 JavaFX 的 Jasper 报告

java - 使用jasperstarter编译运行iReport "java.lang.UnsupportedClassVersionError"