C# 在iText 7中创建无边框表

C# 在iText 7中创建无边框表,c#,itext7,C#,Itext7,我正在将一个应用程序从iTextSharp 5移植到iText 7。在最初的应用程序中,我使用一个母版添加了页码,该母版在页面顶部添加了一个表。我几乎成功了,但是我无法创建一个只有底部边框的表(内部、左侧、右侧和顶部都是无边框的) 但我仍然有顶部、内部和侧面边界。以下是我的代码: 私有表makepagetable(字符串doctitle、int curpage、int totalpage) { PdfFont font=PdfFontFactory.CreateFont(iText.IO.fon

我正在将一个应用程序从iTextSharp 5移植到iText 7。在最初的应用程序中,我使用一个母版添加了页码,该母版在页面顶部添加了一个表。我几乎成功了,但是我无法创建一个只有底部边框的表(内部、左侧、右侧和顶部都是无边框的)

但我仍然有顶部、内部和侧面边界。以下是我的代码:

私有表makepagetable(字符串doctitle、int curpage、int totalpage)
{
PdfFont font=PdfFontFactory.CreateFont(iText.IO.font.Constants.StandardFonts.TIMES_ROMAN);
文本标题=新文本(doctitle).SetFontSize(11f).SetFont(font);
文本页面=新文本(“页面”+curpage.ToString()+”共“+totalpage.ToString()).SetFont(字体);
段落p1=新段落(标题).SetTextAlignment(TextAlignment.LEFT);
段落p2=新段落(页数).SetTextAlignment(TextAlignment.RIGHT);
表mytable=新表(新浮点[]{3,1})
.SetBorderTop(边框。无边框)
.SetBorderRight(Border.NO_Border)
.SetBorderLeft(边框。无边框)
.SetboordBottom(新SolidBorder(2));
浮动pval=500;
mytable.SetWidth(pval);
mytable.AddCell(new Cell().Add(p1)).setboorder(Border.NO_Border);
mytable.AddCell(new Cell().Add(p2)).setboorder(Border.NO_Border);
//SetBorderTop(Border.NO_Border).SetBorderLeft(Border.NO_Border).SetBorderRight(Border.NO_Border);
返回mytable;
}
我还尝试了
mytable.AddCell(new Cell().Add(p2)).SetBorderTop(Border.NO_Border)、SetBorderLeft(Border.NO_Border)、SetBorderRight(Border.NO_Border);
和表对象上的各种类似组合,但我仍然得到了边框

为了完成此操作,这里是调用此函数的例程

public Byte[]addPageNumber(Byte[]firstpass,string doctitle){
//firstpass=原始pdfdocument的数组
//doctitle=表格左侧的文本
int i;
浮动x=30;
浮动y=810;
MemoryStream ms2=新的MemoryStream(首次通过);
PDF阅读器=新的PDF阅读器(ms2);
MemoryStream ms3=新的MemoryStream();
PdfDocument pdfDoc=新的PdfDocument(读卡器,新的PdfWriter(ms3));
文件=新文件(pdfDoc,PageSize.A4,false);
int n=pdfDoc.GetNumberOfPages();

对于(i=3;i无边界表格或单元格,对于c#和iText7,您可以使用:

//Table with no border
table.SetBorder(Border.NO_BORDER);

//Cell with no border
cell.SetBorder(Border.NO_BORDER);
我查看您的代码:

//your source code
mytable.AddCell(new Cell().Add(p1)).SetBorder(Border.NO_BORDER);
//changed code
mytable.AddCell(new Cell().Add(p1).SetBorder(Border.NO_BORDER));
希望这是有帮助的