Как заставить PdfPTable динамически вычислять ширину столбца
Я хочу создать PdfPTable со столбцами, содержащими строки разной длины. Я узнал, что ширина каждой ячейки / столбца одинакова для каждого столбца (по умолчанию), или можно установить долю пространства, которое должен занимать каждый столбец.
Однако я хочу, чтобы столбцы были настолько широкими, насколько это необходимо, но не шире, в зависимости от вставляемых данных. Предположим, что таблица легко помещается на странице (без разрывов!). Конечно, я могу вручную пройтись по всем моим данным и рассчитать максимальную длину строки каждого столбца, соответственно задав свойства таблицы, но мне было интересно, предоставляется ли такая общая опция самим itext.
2 ответа
iText не является HTML, поэтому он не имеет опций для автоматической регулировки ширины, вместо этого он ориентирован на страницу, поэтому вам нужно выбирать ширину в процентах или абсолютных значениях.
Боюсь, что для выполнения того, что вы просите, вы должны реализовать собственное расширение, измеряя ширину, как вы сказали. Посмотрите, как рассчитать строку с помощью iText.
Определяет относительную ширину столбцов float[] columnWidths = new float[]{10f, 20f, 30f, 10f}; table.setWidths(columnWidths);
по этой ссылке: введите описание ссылки здесь