Создать таблицу из двух или трех столбцов с несколькими строками?
Я понимаю, что таблица и ячейки поддерживаются только в PDFClown версии 2.0, но это всего лишь через несколько месяцев. Итак, застряв в версии 1.2, как мне создать электронную таблицу с 2 столбцами (и другую электронную таблицу с 3 столбцами)?
Что-нибудь с примерами, чтобы указать мне в правильном направлении.
1 ответ
Решение
Как вы заметили, механизм компоновки, поддерживающий таблицы и множество других высокоуровневых типографских элементов, запланирован на 0.2.0 (его реализация Java будет предварительно выпущена для оценки и бета-тестирования); тем временем вы можете грубо расположить стол таким образом:
- определить раздел таблицы (столбцы) на странице и нарисовать соответствующие прямоугольники через PrimitiveComposer;
- вставьте в каждую область столбца свое содержимое через BlockComposer, отслеживая максимальное значение y, занимаемое вашим содержимым (это рассчитывается при вызове BlockComposer.End(), после чего вы можете получить ограничивающий прямоугольник вашего содержимого через BlockComposer.BoundBox);
- когда вы заполняете столбцы для текущей строки таблицы, используйте максимальное значение y, сохраненное на шаге 2, чтобы нарисовать нижнюю линию, которая закрывает строку, и вернитесь к шагу 2, пока у вас не закончатся строки;
- если при вставке содержимого вам не хватает места, следите за позициями, возвращаемыми BlockComposer.ShowText() и BlockComposer.ShowXObject(): таким образом, вы можете заполнить каждый столбец, затем перейти к следующей странице и возобновить вставку в соответствии с отслеживаемые позиции.
Этого должно быть достаточно для выполнения работы.;-)