关于java:ITEXT7 TABLE BORDERLESS(无边框)

ITEXT7 TABLE BORDERLESS (No Border)

下面的代码不起作用。

1
2
 Table table = new Table(2);
 table.setBorder(Border.NO_BORDER);

我是itext7的新手,我想要做的就是让我的桌子无边界。
喜欢怎么做?


默认情况下,表格本身不负责iText7中的边框,而单元格则负责。如果需要无边界表,则需要将每个单元格都设置为无边界(或者,如果仍要在内部边界内,请将外部单元格的边缘设置为无边界)。

1
2
3
4
Cell cell = new Cell();
cell.add("contents go here");
cell.setBorder(Border.NO_BORDER);
table.addCell(cell);


您可以编写一种方法,该方法可以运行Table的所有子级并设置NO_BORDER。

1
2
3
4
5
6
private static void RemoveBorder(Table table)
{
    for (IElement iElement : table.getChildren()) {
        ((Cell)iElement).setBorder(Border.NO_BORDER);
    }
}

这给您带来的好处是您仍然可以使用

1
2
3
table.add("whatever");
table.add("whatever");
RemoveBorder(table);

而不是在所有单元格手册上进行更改。