0

我已经浏览了这个网站,但找不到我的问题的相关解决方案。

这是我的问题,我正在使用 iTextSharp 创建一个 PDF 文件,并且该文件创建得非常好。我正在创建一个表并为其分配一个 gridview 数据,如下所示。

//Add Actual columns from the datatable
for (int j = 0; j < dt.Columns.Count; j++) {
    PdfPCell cellHeader = new PdfPCell(FormatHeaderPhrase(dt.Columns[j].ColumnName.ToString()));
    cellHeader.HorizontalAlignment = 1;
    table3.AddCell(cellHeader);// adds the header with proeprties
}
//Add the actual rows from the datatable
for (int i = 0; i < dt.Rows.Count; i++) {
    for (int k = 0; k < dt.Columns.Count; k++) {
        PdfPCell cellRows = new PdfPCell(FormatPhrase(dt.Rows[i][k].ToString().Replace("<br/>","\n").Replace("<sup>","")));
        if (k != 2) {
            cellRows.HorizontalAlignment = 1;
            cellRows.VerticalAlignment = Element.ALIGN_MIDDLE;
        }
        else {
            cellRows.HorizontalAlignment = 0;
        }
        table3.AddCell(cellRows);
        table3.SplitRows = true;
        table3.SplitLate = true;
    }
}

我有一个 A3 页面大小。这里的问题是,当我在表格中的数据超过页面大小时,它会修剪超出的部分并只显示适合一页的数据。如何根据表格的内容使其成为多页(自动分页符)。目前我看到的数据适合一页pdf。它应该生成不止一页。我怎样才能做到这一点。

请让我知道您的意见。我会很感激他们。谢谢你。

4

1 回答 1

0

这可能有效,尝试在每 n 行后创建新页面,假设当前页面仅适合 10 行,则在每 10 条记录后创建新页面

假设您创建了一个初始文档实例

Document document =new Document(PageSize.A4);

在 n 行之后,通过调用添加新页面

document.NewPage();
于 2013-07-29T21:33:21.567 回答