欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java使用iText生成word文档插入表格时border颜色不对问题解决方案,itextborder,使用如下代码插入表格会出

来源: javaer 分享于  点击 35714 次 点评:48

java使用iText生成word文档插入表格时border颜色不对问题解决方案,itextborder,使用如下代码插入表格会出


使用如下代码插入表格会出现颜色不对的问题:

OutputStream outputStream = response.getOutputStream();RtfWriter2 docWriter = RtfWriter2.getInstance(document, outputStream);document.open();Color lightGrey = new Color(0xCC,0xCC,0xCC);Table tableImgPie = new Table(1,1);tableImgPie.setBorderWidth(1);tableImgPie.setBorderColor(lightGrey);tableImgPie.setAlignment(Element.ALIGN_CENTER);tableImgPie.setWidth(100f);Cell imgCell = new Cell("abc");tableImgPie.addCell(imgCell);document.add(tableImgPie);docWriter.flush();document.close();

这样生成word文档中的表格颜色并非浅灰色,而是黑色,出现此问题的原因是table的border被其cell覆盖掉了,它的cell的默认颜色是黑色了。

知道了这一点解决问题的方法就很简单了,我们可以将table的边框颜色设置为0,只设置cell的颜色就可以了。

如下正确的代码:

OutputStream outputStream = response.getOutputStream();RtfWriter2 docWriter = RtfWriter2.getInstance(document, outputStream);document.open();Color lightGrey = new Color(0xCC,0xCC,0xCC);Table tableImgPie = new Table(1,1);tableImgPie.setAlignment(Element.ALIGN_CENTER);tableImgPie.setWidth(100f);Cell imgCell = new Cell("abc");imgCell.setBorderWidth(1);imgCell.setBorderColor(lightGrey);tableImgPie.addCell(imgCell);document.add(tableImgPie);docWriter.flush();document.close();
相关栏目:

用户点评