使用iText将行添加到PDF表格中

Sri*_*san 0 java itext

我在这段代码中得到的是一个包含8列和3行的表.我该怎么办才能获得2排?并且3行中的第1列是空的,但剩余的单元格用"hi"填充.

PdfPTable table = new PdfPTable(8);

PdfPCell cell;

cell = new PdfPCell();
cell.setRowspan(2);
table.addCell(cell);

for(int aw=0;aw<8;aw++){
    table.addCell("hi");
}
Run Code Online (Sandbox Code Playgroud)

Nis*_*hia 5

试试这个:

PdfPTable table = new PdfPTable(8);

    PdfPCell cell;
    for(int aw=0;aw<8;aw++)
    {
        cell = new PdfPCell(new Paragraph("hi"));
        table.addCell(cell );
    }
Run Code Online (Sandbox Code Playgroud)

编辑:

    // Step 1
    Document document = new Document();
    // step 2
    PdfWriter.getInstance(document, new FileOutputStream(filename));
    // step 3
    document.open();
    // step 4

PdfPTable table = new PdfPTable(8);
   for(int aw=0;aw<16 ; aw++){
        table.addCell("hi");
    }



    // Step 5
    document.add(table);
    // step 6
    document.close();
Run Code Online (Sandbox Code Playgroud)

有关完整的示例代码和生成的PDF,请参阅SimpleTable:

在此输入图像描述

正如您在屏幕截图中看到的那样,该表有8列和2行(如预期的那样).

阅读原始问题,我看到第一列有一个带有colspan 2的单元格.考虑到这一点,这只是一个小小的改动:

PdfPTable table = new PdfPTable(8);
PdfPCell cell = new PdfPCell(new Phrase("hi"));
cell.setRowspan(2);
table.addCell(cell);
for(int aw = 0; aw < 14; aw++){
    table.addCell("hi");
}
Run Code Online (Sandbox Code Playgroud)

现在结果如下:

在此输入图像描述

同样是8列和2行,但现在第一列中的单元格跨越两行.