工作中itext遇到的一些问题,做一下处理总结(2012.06.19)

在使用iText生成PDF时,遇到表格单元格跨行并设置背景色的问题。当两个相邻单元格跨行数量相等时,背景色只应用于第一行,后续行颜色会恢复默认。此问题疑似iText 1.4版本的Bug,可通过在跨行少的单元格后添加空白单元格来临时解决。
摘要由CSDN通过智能技术生成

通过itext生成pdf出现的问题,在JTable2PDF类中,当生成pdftable的时,出现一个问题。

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);

cell1Rowspan小于或者等于cell2Rowspan的时候,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形式合并。

显示如图:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值