Jasper reports 如何包括;首字母;当超过一页时,除最后一页外的所有页上的行?

Jasper reports 如何包括;首字母;当超过一页时,除最后一页外的所有页上的行?,jasper-reports,Jasper Reports,在iReport中,我需要在文档中除最后一页之外的所有页脚上打印一些文本,但仅当文档中存在多个页面时 使用案例是,我需要人们在文档的每一页上签名,然后在最后签名。一页纸上可能写得下东西,但可能是50页。我需要在第1页到第49页的第一行,然后在第50页的签名行 起初,我认为我可以在下一次按下时直接打印: 但事实并非如此。根据评估的时间(现在,与报告和页面对比),这些数据的评估似乎不正确。只需添加“最后一页页脚”的标记即可。 这样,除了最后一页之外,所有页面都可以有一个页脚,最后一页可以有一个单独的

在iReport中,我需要在文档中除最后一页之外的所有页脚上打印一些文本,但仅当文档中存在多个页面时

使用案例是,我需要人们在文档的每一页上签名,然后在最后签名。一页纸上可能写得下东西,但可能是50页。我需要在第1页到第49页的第一行,然后在第50页的签名行

起初,我认为我可以在下一次按下时直接打印:

但事实并非如此。根据评估的时间(现在,与报告和页面对比),这些数据的评估似乎不正确。

只需添加“最后一页页脚”的标记即可。
这样,除了最后一页之外,所有页面都可以有一个页脚,最后一页可以有一个单独的页脚

这篇文章描述了nice解决方案:。我在下面的示例中使用了它


简短描述 借助摘要页面,我们可以设置最后一页已绘制的标志。
对于初始化此标志,我们可以使用摘要栏的printWhenExpression

样本 jrxml文件:


报告的设计(在iReport中):

结果将是。第一页(第1页,共2页):

第二页(最后一页):

如果只有一页,结果将是:


在我的示例中,我将一个文本字段放在另一个文本字段之后。

您是否查看了此帖子:?我没有注意到这个问题。您提出的解决方案非常有效,尽管我确实觉得它有点“笨拙”。虽然这是一个很好的解决方案,可能对某些人有效,但我们实际上在一个虚拟组页脚中有我们的免责声明和签名块,以便在只有一点信息时将其推到页面底部。所以这对我们不起作用,除非你知道另一种方法,当细节不占用太多空间时,把页脚推到底?
 new Boolean($V{PAGE_NUMBER} == 1 && $V{PAGE_COUNT} > 1)