iText 7表格的底部边框未绘制

时间:2019-08-20 10:40:44

标签: c# wpf itext itext7

我正在使用iText 7在PDF文件中创建表格。我已经成功创建了表格,但是表格的底部边框没有绘制。

结果截屏:

Screenshot of the Result

我的代码:

 private void Convert()
    {
        String dest = "D:/addingTable.pdf";
        var table = new Table(1, true);
        Border b = new SolidBorder(ColorConstants.RED, 5);
        table.SetBorder(b);
        using (var writer = new PdfWriter(dest))
        {
            using (var pdf = new PdfDocument(writer))
            {
                var doc = new Document(pdf);

                var name = new Paragraph("Hello World!").SetFontColor(ColorConstants.BLUE).SetTextAlignment(iText.Layout.Properties.TextAlignment.CENTER).SetFontSize(13);
                table.AddCell(new Cell().Add(name));
                doc.Add(table);
            }
        }
        Process.Start(dest);
    }

1 个答案:

答案 0 :(得分:1)

您将Table支持设置为largeTable的情况下显式创建true

var table = new Table(1, true);

这允许将大型表添加到PDF,而不必将整个表结构同时驻留在内存中:您可以分段添加它,并偶尔刷新所有聚合数据。

[add first few rows]
doc.Add(table);
[add next few rows]
table.Flush();
[add next few rows]
table.Flush();
...
[add final rows]
table.Complete();

在您的代码中,您忘了最后一个

table.Complete();

(或者您根本不想创建以largeTable为支持的表)。