当我将一个单元格添加到表中时,它会添加到下一列。
是否可以先添加行或更灵活地添加值?我是一个初学者,所以对此我不太了解。
这是我的代码:
Document document = new Document(PageSize.A3, 50, 50, 25, 25);
MemoryStream PDFData = new MemoryStream();
PdfWriter PDFWriter = PdfWriter.GetInstance(document, PDFData);
document.Open();
PdfPTable table = new PdfPTable(testTimes);
table.DefaultCell.Border = 1;
table.HorizontalAlignment = 0;
table.WidthPercentage = 100f;
foreach (Test test in tests)
{
switch (test.type)
{
case 3:
//new Column (fail)
PdfPCell type = new PdfPCell(new Phrase(TestType.Aimatologikes.ToString()));
table.AddCell(type);
PdfPCell data = new PdfPCell(new Phrase("values"));
foreach (TestData testdata in test.TestDatas)
{
//Rows
table.AddCell(data);
}
break;
}
}
document.Add(table);
document.Close();
这是结果:
我想在第二个foreach下面分开列。这可能吗?
答案 0 :(得分:1)
两个建议:
请允许我解释。
我们将此中介对象称为EasyTable。
EasyTable需要做一些事情:
为此,您可以轻松实现EasyTable以使用Map。这样,您可以将Point对象映射到PdfObject。您可以通过遍历所有键并找到最大Y值来计算行数。列数类似。