我正在使用iText(iTextSharp 5.1.1),我正在尝试做一些表格。
第一个表列跨越多行。根据以前的内容,该列有时会分为两页。有时,第一页上只剩下一行,使列不够高,无法显示标签。
如果添加到文档中,是否有任何方法可以检测列是否跨越两个页面,因此我可以填写一些行来防止此行为。
或者在任何情况下都有办法告诉单元格不要分裂吗?
答案 0 :(得分:0)
好吧,我用Java中的iText 2.1.7编写了你的例子:
PdfPTable table = new PdfPTable(2);
table.setSplitLate(true); // default value
PdfPCell largeCell =
new PdfPCell(new Paragraph("Lorem ipsum dolor sit amet,\r\n"
+ "consectetur adipiscing elit. Curabitur\r\n"
+ "vel nisl quis turpis molestie blandit.\r\n"
+ "Donec a ligula sit amet quam feugiat\r\n"
+ "aliquet in id augue. Etiam placerat\r\n"
+ "massa ac ligula dictum convallis.\r\n"
+ "Mauris in leo quis lorem facilisis\r\n"
+ "tincidunt. Praesent lorem libero,\r\n"
+ "porttitor tincidunt egestas consequat,\r\n"
+ "tempor quis erat. Sed lorem ipsum,\r\n"
+ "posuere a ornare ac, viverra ut diam. In\r\n"
+ "porta ultrices tristique. Nulla non libero\r\n"
+ "a nisi pharetra consequat. Vestibulum\r\n"
+ "nunc urna, lobortis id ultricies vitae,\r\n"
+ "fermentum eu magna. Duis nibh lacus,\r\n"
+ "adipiscing at tempor eget, interdum\r\n" + "quis libero."));
PdfPCell cell = new PdfPCell(new Paragraph("Long Column"));
cell.setRowspan(5);
table.addCell(cell);
for (int i = 0; i < 5; i++)
{
table.addCell(largeCell);
}
根据Kornelije的要求,它的效果非常好...当我使用table.setSplitLate(false)
时,只会产生“错误”输出,所以默认值为true
一切都很好。