在日历项目中工作,使用iText生成pdf并打印计划。 您可以绘制包含colspan的单元格和包含rowspan的单元格,但不能组合。 表的宽度为4个单元格。 我想实现这样的目标:
((a ) (b ) (c ) (c ) ) )。
((d ) (e ) ) (c ) ) )。
因此,1、1、2和2、1、2是普通细胞。 但是,(1,3 )中应该有覆盖(1,3 ) ) 1,4 ) ) 2,3 )和) 2,4 )的细胞,所以有2个spspan和2的行间。
当前代码:
pdfptabletable=newpdfptable(4;
pdfpcellcell=newpdfpcell (new phrase (' 1,1 ' );
table.addcell(cell;
cell=newpdfpcell (new phrase (' 1,2 ' );
table.addcell(cell;
pdfpcellcell 23=newpdfpcell (new phrase (' multi 1,3 and1,4 ' );
Cell23.setColspan(2;
Cell23.setRowspan(2;
table.addcell(cell23;
cell=newpdfpcell (new phrase (' 2,1 ' );
table.addcell(cell;
cell=newpdfpcell (new phrase (' 2,2 ' );
table.addcell(cell;
//2,3 and 2,4 shouldbefilledbecause 1,3 has rowspan2and colspan 2。
//table.completeRow (; //no effect
但是发生了错误:
Exception转换器: Java.io.io exception : thedocumenthasnopages。
如果尚未开始创建第二行,则只会绘制“一行”,且“1,3”单元格中有2个指南针。 Rowspan(2)无效,因为没有第二行。
任何援助都值得称赞。 谢谢
乍一看,我会得到“文档中没有页面”的例外,因为您没有将任何内容添加到文档中。 我没看到:
文档. add (table;
代码段中的任意位置。
我把你的代码复制/粘贴到了完整的例子中。 我在这里发表了一个完整的例子。 我是ColspanRowspan。 生成的PDF如下:
这似乎是理想的行为。 只能考虑两个不同。 (1)你忘了添加实际表格吗)这是我的第一个答案。 )或)2)您正在使用强大的旧版本iText,其中rowspan不受完全支持。
这只是一部分。 一会儿就这么做。 就像我说的,如果我离开第二排,一般结构就没问题了。 只增加第二行给我带来问题。
根据你的代码编写概念验证后,我更新了我的答案。
谢谢你。 我想这是版本。 因为我百分之百肯定document.add (表格)。 只是注释掉代码段的第二行并显示。 因为需要切换到低级的API绘制,所以很高兴看到它实际上像预期的那样工作。