在Jasper Studio中,如何禁用/显示报告中单个页面的背景。
我要禁用在背景中为最后一页设置的水印图像。
答案 0 :(得分:0)
当您需要将当前页面与总页面数进行比较时,我知道的最简单的方法是在元素上使用评估类型“ auto”。
将在对应于其重置类型的时间评估变量。
解决方案改编自Lucianc在https://community.jaspersoft.com/questions/514622/print-when-last-page上的回答
创建一个包含当前页面的变量,该页面具有重置类型的页面(以便在将“自动”作为当前页面编号时进行评估)
<variable name="currentPageInAutoEval" class="java.lang.Integer" resetType="Page">
<variableExpression>$V{PAGE_NUMBER}</variableExpression>
</variable
将元素(文本字段,图像等)上的评估时间设置为“自动”,并在表达式中使用ternary operator
在您的情况下,最后一页上没有图像
<image evaluationTime="Auto">
<imageExpression>$V{currentPageInAutoEval}.equals($V{PAGE_NUMBER}) ? null : yourImage</imageExpression>
</image>
具有evalutationTime="Auto"
$V{currentPageInAutoEval}
的位置将被评估为当前页码的resetType(Page),而$V{PAGE_NUMBER}
被评估为总页数。