iText:带图像的单元格不适用Rowspan

时间:2017-02-24 13:41:15

标签: java image html-table itext

我有一张桌子(2 x 2)。 如果我在第一个带有rowspan 2的单元格中添加一个Phrase作为单元格,它就可以了。但是如果我使用Image作为单元格,则rowspan永远不会适用。

    float[] rowwidths2 = {0.6f,0.4f};
    PdfPTable felsoegyharmad = new PdfPTable(rowwidths2);
    felsoegyharmad.setWidthPercentage(100);
    PdfPCell kepcell = new PdfPCell(new Phrase("image place", fontAlap));
    kepcell.setRowspan(2);
    felsoegyharmad.addCell(kepcell);
    felsoegyharmad.addCell(new Phrase("1", fontAlap));
    felsoegyharmad.addCell(new Phrase("2", fontAlap));

上面的代码用作广告。 但是这个代码永远不会排版:

    PdfPCell kepcell = new PdfPCell();
    kepcell.addElement(Image.getInstance(path));
    kepcell.setRowspan(2);
    felsoegyharmad.addCell(kepcell);
    felsoegyharmad.addCell(new Phrase("1", fontAlap));
    felsoegyharmad.addCell(new Phrase("2", fontAlap));

如何将此图像放入第一列但高度为两行?

1 个答案:

答案 0 :(得分:1)

如果你想知道为什么没有人回答你的问题。这很简单:你描述的问题无法再现。我已经使用了您的代码片段,并创建了以下独立示例:

PdfPTable table = new PdfPTable(2);
PdfPCell imageCell = new PdfPCell();
imageCell.addElement(Image.getInstance(IMG));
imageCell.setRowspan(2);
table.addCell(imageCell);
table.addCell(new Phrase("1"));
table.addCell(new Phrase("2"));

有关完整源代码,请参阅ImageRowspan

生成的PDF如下所示:

enter image description here

如您所见,该表有两列和两行。第一个单元格(带有图像的单元格)跨越两行。您可以从git存储库下载cmp_image_rowspan.pdf