Как скрыть / показать и изображение или текстовое поле на последней странице? - PullRequest
0 голосов
/ 04 января 2019

Как в Jasper studio отключить / показать фон для отдельной страницы в отчете.

Я хочу отключить изображение водяного знака, которое я установил в качестве фона для последней страницы.

1 Ответ

0 голосов
/ 05 января 2019

Самый простой метод, который я знаю, когда вам нужно сравнить текущую страницу с общим числом страниц, - это использовать для элемента тип оценки "auto".

С EvaluationTimeEnum

Переменные будут оцениваться во время, соответствующее их типу сброса.

Решение адаптировано из ответа Люциана на 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

для вашего элемента (textField, image и т. Д.) Установите время оценки "Авто" и в выражении используйте троичный оператор

В вашем случае нет изображения на последней странице, это будет

<image evaluationTime="Auto">
    <imageExpression>$V{currentPageInAutoEval}.equals($V{PAGE_NUMBER}) ? null : yourImage</imageExpression>
</image>

Следовательно, с evalutationTime="Auto" $V{currentPageInAutoEval} будет оцениваться как resetType (Page) для номера текущей страницы, а $V{PAGE_NUMBER} - как общее количество страниц.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...