Itextsharp 在PDF表格的行之间添加行

Itextsharp 在PDF表格的行之间添加行,itextsharp,Itextsharp,我的代码是这样的,这里的it是ITextSharp.Text 我想问一下,如果我想在每行之间添加黑线,怎么做? 我试图找到ITEXTSharp.Text.Table的属性,但找不到任何属性 it.Document doc = new it.Document(); PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(fileName, FileMode.Create)); doc.Open(); it.Phras

我的代码是这样的,这里的
it
ITextSharp.Text

我想问一下,如果我想在每行之间添加黑线,怎么做? 我试图找到
ITEXTSharp.Text.Table
的属性,但找不到任何属性

it.Document doc = new it.Document();
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(fileName, FileMode.Create));        
doc.Open();
it.Phrase p = new it.Phrase("item1", new it.Font(testBaseFont, 14, it.Font.BOLD, it.Color.BLACK));
p = new it.Phrase("item2", new it.Font(testBaseFont, 14, it.Font.BOLD, it.Color.BLACK));
p.Leading = 2;
doc.Add(p);
it.Table logTable = new it.Table(5);
logTable.Alignment = it.Table.ALIGN_LEFT;
logTable.DefaultVerticalAlignment = it.Element.ALIGN_MIDDLE;
logTable.Width = 100;
logTable.Border = it.Table.TOP_BORDER | it.Table.BOTTOM_BORDER;
logTable.BorderWidth = 0.5f;
logTable.DefaultCellBorder = 0;
logTable.Cellspacing = 2;
logTable.Cellpadding = 0;
logTable.DefaultCellBackgroundColor = it.Color.WHITE;
logTable.SetWidths(new int[] { 20, 20, 20, 20, 20 });
//Write column headers
logTable.AddCell(new it.Phrase("Column1", tableHeaderFont));
logTable.AddCell(new it.Phrase("Column2", tableHeaderFont));
logTable.AddCell(new it.Phrase("Column3", tableHeaderFont));
logTable.AddCell(new it.Phrase("Column4", tableHeaderFont));
logTable.AddCell(new it.Phrase("Column5", tableHeaderFont));

logTable.AddCell(new it.Cell(new it.Phrase("1", tableCellFont)));
logTable.AddCell(new it.Phrase("12", tableCellFont));
logTable.AddCell(new it.Phrase("13", tableCellFont));
logTable.AddCell(new it.Phrase("14", tableCellFont));
logTable.AddCell(new it.Phrase("15", tableCellFont));


logTable.AddCell(new it.Cell(new it.Phrase("2", tableCellFont)));
logTable.AddCell(new it.Phrase("22", tableCellFont));
logTable.AddCell(new it.Phrase("23", tableCellFont));
logTable.AddCell(new it.Phrase("24", tableCellFont));
logTable.AddCell(new it.Phrase("25", tableCellFont));

doc.Add(logTable);
doc.Close();

首先,
Table
支持
PdfPTable
,因此您需要切换到该选项

然后,只需更改表实例的
DefaultCell

var t = new PdfPTable(2);
//Use only a bottom border
t.DefaultCell.Border = PdfPCell.BOTTOM_BORDER;
for (var i = 0; i < 10; i++) {
    t.AddCell("Hello");
    t.AddCell(i.ToString());
}
var t=新的PdfPTable(2);
//只使用底部边框
t、 DefaultCell.Border=PdfPCell.BOTTOM_Border;
对于(变量i=0;i<10;i++){
t、 AddCell(“你好”);
t、 AddCell(i.ToString());
}
如果您仍然需要完整的表格边框,但只需要为行添加较厚的底部边框,您也可以这样做:

var t = new PdfPTable(2);
//Use a thicker border for the bottom
t.DefaultCell.BorderWidthBottom = 2;
for (var i = 0; i < 10; i++) {
    t.AddCell("Hello");
    t.AddCell(i.ToString());
}
var t=新的PdfPTable(2);
//底部使用较厚的边框
t、 DefaultCell.BorderWidthBottom=2;
对于(变量i=0;i<10;i++){
t、 AddCell(“你好”);
t、 AddCell(i.ToString());
}

嗨,克里斯·哈斯,非常感谢你的好意和帮助。好吧,现在我最好不要切换到PdfPTable,因为我应该等待正在休假的同事的回复。但无论如何,在我的例子中添加DefaultCell.Border也是一样的。