在分页符中的rowspan单元格中的文本

时间:2016-02-12 07:17:14

标签: itext

我正在使用iText 5.5.4生成pdf。

我有一堆行应该组合在一起,并有一个rowspan单元格来命名该组。但是,在分页符上,单词" GRP"被分解为" G"  和" RP"。有没有办法让群体牢不可破,以便如果它不适合当前群体,它将在下一页上绘制?

我尝试了cols=50keepRowsTogether,但没有获得一致的结果。

setBreakpoints


布局图片:

Layout Image

-------------------
| G |    row 1    |
| R |    row 2    |
| P |    row 3    |
-------------------

PDF Output from above code

1 个答案:

答案 0 :(得分:2)

由于您在StackOverflow上发布问题时没有提供任何强制性的代码(除非您真的不想获得答案),我试图编写一个示例来重现(不需要的)结果

我没有成功。查看我的SplittingAndRowspan example

document.add(new Paragraph("Table with setSplitLate(true):"));
PdfPTable table = new PdfPTable(2);
table.setSpacingBefore(10);
PdfPCell cell = new PdfPCell();
cell.addElement(new Paragraph("G"));
cell.addElement(new Paragraph("R"));
cell.addElement(new Paragraph("P"));
cell.setRowspan(3);
table.addCell(cell);
table.addCell("row 1");
table.addCell("row 2");
table.addCell("row 3");
document.add(table);

我没有真正使用setSplitLate(true);,因为split late参数的默认值是true。结果如下:

enter image description here

由于包含G R P的单元格不适合页面,表格将转发到下一页(这正是您想要的)。

当然,当我使用setSplitLate(false)

时,这不会发生
document.add(new Paragraph("Table with setSplitLate(false):"));
table.setSplitLate(false);
document.add(table);

在这种情况下,含有G R P的细胞被分裂:

enter image description here

根据您问题中分享的稀缺信息,我假设您的代码中某处有table.setSplitLate(false);行。如果是这样,请将其删除。如果没有,请分享您的代码。