Моя проблема в том, что itext не добавляет новую страницу для длинных таблиц, он просто отображает одну страницу, и отображается только часть таблицы, вот мой код:
MemoryStream reportStream = new MemoryStream();
IEnumerable<Site> siteList = SiteManager.GetAllSites();
Document doc = new Document();
doc.SetMargins(7f, 10f, 10f, 7f);
var writer = PdfWriter.GetInstance(doc, reportStream);
writer.CloseStream = false;
doc.Open();
PdfPTable tableLayout = new PdfPTable(11);
var personalTable = AddPersonalTable(tableLayout);
personalTable.WriteSelectedRows(0, -1, 0, 842, doc.Left, doc.Top
,writer.DirectContent);
doc.Close();
byte[] byteInfo = reportStream.ToArray();
reportStream.Write(byteInfo, 0, byteInfo.Length);
reportStream.Position = 0;
return reportStream;
и мой метод:
private static PdfPTable AddPersonalTable(PdfPTable tableLayout)
{
float[] headers = { 12, 9, 10, 4, 9, 11, 9, 9, 9, 9, 9 };
tableLayout.SetWidths(headers);
tableLayout.WidthPercentage = 100;
tableLayout.HeaderRows = 1;
//adding cells
return tableLayout;
}
Я ценю любую помощь.
он находится в комментариях к // ячейкам, это просто tableLayout.AddCell (...)
Итак, вы добавляете контент в таблицу, но вы не добавляете таблицу в документ. Однако, скорее всего, ошибка в вашем коде, добавляющем таблицу в документ.
Извините, я забыл добавить это в свой вопрос, независимо от того, что моя проблема была решена, я заменил WriteSelectedRows на doc.Add(personalTable), большое вам спасибо за ваш интерес к моей проблеме





Я не вижу, чтобы вы вообще что-нибудь добавляли в документ ...