通过itext生成pdf出现的问题,在JTable2PDF类中,当生成pdf中table的时,出现一个问题。
Cell cell1 = new Cell(newParagraph("Reservoir Parameters", f));
cell.setBackgroundColor(color);
cell.setColspan(2);
cell.setRowspan(5);
cell2 = new Cell(new Paragraph("No.ofSamples", f));
cell.setBackgroundColor(color);
cell.setRowspan(5);
当cell1中Rowspan小于或者等于cell2中Rowspan的时候,cell中设置背景色会出现问题,itext默认
将cell的第一行设置成为color的颜色,而从第二行开始会被还原成默认的颜色
代码:(cell1.rowspan=cell2.rowspan=5)
Cell cell1 = new Cell(new Paragraph("ReservoirParameters", f));
cell.setBackgroundColor(color);
cell.setColspan(2);
cell.setRowspan(5);
cell2 = new Cell(new Paragraph("No.ofSamples", f));
cell.setBackgroundColor(color);
cell.setRowspan(5);
显示如图:
代码:(cell1.rowspan>cell2.rowspan)
Cell cell1 = new Cell(newParagraph("Reservoir Parameters", f));
cell.setBackgroundColor(color);
cell.setColspan(2);
cell.setRowspan(5);
cell2 = new Cell(new Paragraph("No.ofSamples", f));
cell.setBackgroundColor(color);
cell.setRowspan(4);
显示如图:
(No.of Samples 未跨5行)
可能这是老版本itext1.4中的bug问题,itext5.2.1可以不会出现该问题,未测试。
暂时解决方法:
将No.of Samples 设置跨行4行,在最后补一个空的cell,将No.of Samples 与该cell形式合并。
显示如图: