Создание собственного BIRT-излучателя: как получить ширину и высоту ячейки, таблицы или сетки? - PullRequest
2 голосов
/ 30 января 2012

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

Я попытался получить эту информацию, вызвав cellContent.getWidth () и cellContent.getComputedStyle ().GetWidth () .Первый возвращает ноль, второй выдает исключение «createUnsupportedPropertyException».

Я использую Birt 2.6.

Может кто-нибудь дать мне подсказку, как это получитьсделано?

ура

1 Ответ

0 голосов
/ 04 февраля 2014

Это, вероятно, не тот ответ, который вы хотели бы услышать, но ...

Однажды я попытался понять, как на самом деле работают странично-ориентированные излучатели (см. Ниже).

Исходный код не очень помогает в этом отношении, он слишком сложен для понимания - в частности, по сравнению с другими библиотеками, такими как, например, ReportLab .

И я не былсмог найти в Интернете любую документацию, описывающую алгоритм компоновки.

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


То, чего я тогда пытался добиться, это: визуализировать сетку в дне последней страницы.Звучит легко?Что ж, я сдался.

Что-то, что я смог сделать: избежать ненужных вложенных таблиц в выводе WordEmitter.

...