Я использую PdfWriter
для создания документа PDF. Я добавляю PdfPTable
в PDF-документ. В этой таблице есть строка заголовка, а затем строки фактических данных. Если таблица большая, то часть ее переносится на новую страницу. Я хочу, чтобы на этой странице также была строка заголовка таблицы. Однако мне нужна эта строка заголовка только тогда, когда данные таблицы переходят на новую страницу.
iText PDFWriter - Написание заголовка таблицы, если несколько строк таблицы переходят на новую страницу
comment
Я так и не получил отзывов на свой ответ. Разве это не решило твою проблему?
- person Bruno Lowagie   schedule 23.11.2015
Ответы (1)
Вот как вы создаете таблицу со строкой заголовка:
// table with 2 columns:
PdfPTable table = new PdfPTable(2);
// header row:
table.addCell("Key");
table.addCell("Value");
table.setHeaderRows(1);
// many data rows:
for (int i = 1; i < 51; i++) {
table.addCell("key: " + i);
table.addCell("value: " + i);
}
document.add(table);
В этом случае для таблицы требуется более одной страницы. Поскольку вы использовали setHeaderRows()
с 1
в качестве параметра, первая строка будет повторяться:
Если вы не хотите, чтобы заголовок отображался на первой странице, вам нужно добавить одну строку: table.setSkipFirstHeader(true);
// table with 2 columns:
PdfPTable table = new PdfPTable(2);
// header row:
table.addCell("Key");
table.addCell("Value");
table.setHeaderRows(1);
table.setSkipFirstHeader(true);
// many data rows:
for (int i = 1; i < 51; i++) {
table.addCell("key: " + i);
table.addCell("value: " + i);
}
document.add(table);
Теперь таблица выглядит так:
person
Bruno Lowagie
schedule
15.09.2015