JasperReports экспортируется в Excel, игнорируя цвет фона? - PullRequest
5 голосов
/ 15 ноября 2008

Были ли у вас чередующиеся цвета фона в отчете Jasper, а затем экспортированы в Excel? Экспорт в Excel, похоже, игнорирует чередующийся цвет.

У меня есть отчет Jasper, в котором строки чередуются с цветом фона, используя процедуру, указанную ЗДЕСЬ . При предварительном просмотре с использованием программы просмотра или экспорта в PDF это работает, но не при экспорте в Excel. Я пытался использовать JRXlsExporter и JExcelApiExporter оба безрезультатно.

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

Заранее спасибо!

Ответы [ 2 ]

6 голосов
/ 21 мая 2010

Кроме того, убедитесь, что у условных стилей, которые вы создаете, установлен флажок "непрозрачный" ... Если нет, цвет фона никогда не будет отображаться в отчете Excel (никогда !!!) ....

Кроме того, опция "непрозрачный" должна быть отмечена в текстовых полях ....

И если вы заметили, что текстовые поля никогда не принимали стиль, который вы им дали, попробуйте установить цвет переднего плана и фон в null на панели свойств каждого текстового поля (это работает для меня) ...

Надеюсь, это поможет ... пока.

4 голосов
/ 15 ноября 2008

Вы пробовали идею, предложенную в комментарии той самой процедуры, на которую вы ссылаетесь?

Сначала, как создать новый стиль отчета с условием:

Последние выпуски JasperReports включают стили отчетов, которые делают это немного проще - вам больше не нужно создавать прямоугольник.

Я использую iReport для создания своих стилей - есть панель «Стили», которая по умолчанию пристыкована к панели «Библиотека». Если вы сделаете это видимым, вы можете создать новый стиль в библиотеке стилей. На появившемся экране дайте стилю имя (например, «EvenOddRowStyle» и нажмите «Добавить» в разделе «Условия стиля». Используйте одно из выражений, которое дал Брайан, и нажмите «Применить»), а в разделе «Общие» нажмите «… »Рядом с« Backcolor »и выберите нужный цвет фона. Наконец, когда закончите с вашим отчетом, примените этот стиль ко всем полям в строках, которые вы хотите выделить. Просто перетащите стиль из панели стилей на поле.

Тогда как определить стиль, который будет применяться при экспорте в Excel:

определение нового стиля с помощью выражения условия:

Boolean.valueOf( $V{PAGE_COUNT}.intValue() % 2 == 0 )

на нем без использования прямоугольника и печати при выражении на нем !

...