C# iTextSharp:pdfPTable与其他内容重叠

C# iTextSharp:pdfPTable与其他内容重叠,c#,pdf-generation,itextsharp,C#,Pdf Generation,Itextsharp,我正在使用iTextsharp从C#应用程序生成PDF文档。我有一个PdfPTable来显示一些表格数据。我在表格中的问题与另一段重叠。我是否可以将表格放在特定位置?下面是我的代码 PdfPTable objTable = new PdfPTable(6); objTable.DefaultCell.Padding=1; objTable.DefaultCell.BorderColor = new Color(123, 123, 163);

我正在使用iTextsharp从C#应用程序生成PDF文档。我有一个PdfPTable来显示一些表格数据。我在表格中的问题与另一段重叠。我是否可以将表格放在特定位置?下面是我的代码

        PdfPTable objTable = new PdfPTable(6);
        objTable.DefaultCell.Padding=1;
        objTable.DefaultCell.BorderColor = new Color(123, 123, 163);

        objTable.DefaultCell.Padding = 1;



        float[] headerwidths = { 12,18,25,20,6,17 }; // percentage
        objTable.SetWidths(headerwidths);
        objTable.WidthPercentage = 80; // percentage


        System.Drawing.Color objColor=System.Drawing.ColorTranslator.FromHtml("#EEEEEE");

        PdfPCell objCell0 = new PdfPCell(new Phrase("SlNo"));
        PdfPCell objCell1 = new PdfPCell(new Phrase("Date"));
        PdfPCell objCell2 = new PdfPCell(new Phrase("Expense name"));
        PdfPCell objCell3 = new PdfPCell(new Phrase("Budgeted value"));
        PdfPCell objCell4 = new PdfPCell(new Phrase("Units"));
        PdfPCell objCell5 = new PdfPCell(new Phrase("Total submitted"));


        //Add child rows with data
       List<SubmitExpenseItem> objItemList=objExpense.ExpenseChildItems;
       foreach (SubmitExpenseItem expChildItem in objItemList)
       {
           slno++;
           objTable.AddCell(new PdfPCell(new Phrase(slno.ToString())));
           objTable.AddCell(new PdfPCell(new Phrase(expChildItem.SubmitDate.ToShortDateString())));
           objTable.AddCell(new PdfPCell(new Phrase(expChildItem.ExpenseName)));
           objTable.AddCell(new PdfPCell(new Phrase(expChildItem.BudgetValue.ToString())));
           objTable.AddCell(new PdfPCell(new Phrase(expChildItem.Units.ToString())));
           objTable.AddCell(new PdfPCell(new Phrase(expChildItem.ActualValue.ToString())));              

       }

  objChildInfoPara.Add(objTable);

  objDoc.Add(objMasterDetailsPara);//First para
  objDoc.Add(objChildInfoPara);  
PdfPTable objTable=新的PdfPTable(6);
objTable.DefaultCell.Padding=1;
objTable.DefaultCell.BorderColor=新颜色(123、123、163);
objTable.DefaultCell.Padding=1;
浮动[]头宽度={12,18,25,20,6,17};//百分比
目标。设置宽度(头部宽度);
objTable.WidthPercentage=80;//百分比
System.Drawing.Color objColor=System.Drawing.ColorTranslator.FromHtml(“#EEEEEE”);
PdfPCell objCell0=新的PdfPCell(新短语(“SlNo”);
PdfPCell objCell1=新的PdfPCell(新短语(“日期”);
PdfPCell objCell2=新的PdfPCell(新短语(“费用名称”);
PdfPCell objCell3=新PdfPCell(新短语(“预算值”);
PdfPCell objCell4=新的PdfPCell(新短语(“单位”);
PdfPCell objCell5=新的PdfPCell(新短语(“提交总数”);
//添加包含数据的子行
List objItemList=objExpense.ExpenseChildItems;
foreach(对象列表中的SubmitExpenseItem expChildItem)
{
slno++;
AddCell(新的PdfPCell(新短语(slno.ToString()));
AddCell(新的PdfPCell(新短语(expChildItem.SubmitDate.ToShortDateString()));
AddCell(新的PdfPCell(新短语(expChildItem.ExpenseName));
AddCell(新的PdfPCell(新短语(expChildItem.BudgetValue.ToString()));
AddCell(新的PdfPCell(新短语(expChildItem.Units.ToString()));
AddCell(新的PdfPCell(新短语(expChildItem.ActualValue.ToString()));
}
objChildInfoPara.Add(objTable);
objDoc.Add(objMasterDetailsPara)//第一段
objDoc.Add(objChildInfoPara);
现在我的第二段(objChildInfoPara)与第一段重叠


有人能告诉我如何解决这个问题吗

您的代码没有指定objMasterDetailsPara的内容。我想它是在别处定义的

我看到的一个问题是,您的标题单元格(objCell0…5)从未实际添加到pdf文档中。如果objMasterDetailsPara应该包含此列标题信息,这就可以解释您的问题。看起来第二段与第一段重叠,而实际上第一段的最后一部分从未实际添加到pdf文档中