Создать таблицу из двух или трех столбцов с несколькими строками?

Я понимаю, что таблица и ячейки поддерживаются только в PDFClown версии 2.0, но это всего лишь через несколько месяцев. Итак, застряв в версии 1.2, как мне создать электронную таблицу с 2 столбцами (и другую электронную таблицу с 3 столбцами)?

Что-нибудь с примерами, чтобы указать мне в правильном направлении.

1 ответ

Решение

Как вы заметили, механизм компоновки, поддерживающий таблицы и множество других высокоуровневых типографских элементов, запланирован на 0.2.0 (его реализация Java будет предварительно выпущена для оценки и бета-тестирования); тем временем вы можете грубо расположить стол таким образом:

  1. определить раздел таблицы (столбцы) на странице и нарисовать соответствующие прямоугольники через PrimitiveComposer;
  2. вставьте в каждую область столбца свое содержимое через BlockComposer, отслеживая максимальное значение y, занимаемое вашим содержимым (это рассчитывается при вызове BlockComposer.End(), после чего вы можете получить ограничивающий прямоугольник вашего содержимого через BlockComposer.BoundBox);
  3. когда вы заполняете столбцы для текущей строки таблицы, используйте максимальное значение y, сохраненное на шаге 2, чтобы нарисовать нижнюю линию, которая закрывает строку, и вернитесь к шагу 2, пока у вас не закончатся строки;
  4. если при вставке содержимого вам не хватает места, следите за позициями, возвращаемыми BlockComposer.ShowText() и BlockComposer.ShowXObject(): таким образом, вы можете заполнить каждый столбец, затем перейти к следующей странице и возобновить вставку в соответствии с отслеживаемые позиции.

Этого должно быть достаточно для выполнения работы.;-)

Другие вопросы по тегам