如果新的pdf页面超过iTextShartp pdf中的页面大小,如何继续在该页面上写入数据

本文关键字:pdf 继续 数据 iTextShartp 如果 何继续 | 更新日期: 2023-09-27 18:25:34

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

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

//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中。它应该生成多个页面。我怎样才能做到这一点。

请告诉我你的意见。我会感谢他们的。非常感谢。

如果新的pdf页面超过iTextShartp pdf中的页面大小,如何继续在该页面上写入数据

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

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

Document document =new Document(PageSize.A4);

在n行之后,通过调用

添加新页面

document.NewPage();