【问题标题】:itext pdf with com.lowagie.text.table带有 com.lowagie.text.table 的 itext pdf
【发布时间】:2014-07-11 06:04:38
【问题描述】:

如何避免 iText 中两个表格之间的空间或间隙 使用类 com.lowagie.text.table

    Table table;
    com.lowagie.text.Cell cell;
    table = new Table(2);
    table.setPadding(2);
    table.setWidths(new int[] {100});
    table.setWidth(100);
    cell = new com.lowagie.text.Cell(new Phrase(
            "sample text1", FontFactory
                    .getFont(FontFactory.HELVETICA, commonfontsize)));
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    cell.setBorder(0);
    table.addCell(cell);
    document.add(table);
    table = new Table(2);
    table.setPadding(2);
    table.setWidths(new int[] {50,50});
    table.setWidth(100);
    cell = new com.lowagie.text.Cell(new Phrase(
            "sample text1", FontFactory
                    .getFont(FontFactory.HELVETICA, commonfontsize)));
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    cell.setBorder(0);
    table.addCell(cell);
    cell = new com.lowagie.text.Cell(new Phrase(
            "sample text2", FontFactory
                    .getFont(FontFactory.HELVETICA, 10)));
    cell.setHorizontalAlignment(Element.ALIGN_CENTER);
    cell.setBorder(0);
    table.addCell(cell);
    document.add(table);

如何去除第一张表和第二张表之间的空间?

【问题讨论】:

  • Table 类在很多年前就被废弃了。您正在使用的 iText 版本也是如此。我建议您开始使用PdfPTable 而不是Table(真的必须!)并且您升级到在包名称中没有提及我的名字的iText 版本。 (我是你在代码中提到的 Lowagie!)

标签: itext


【解决方案1】:

这应该在PdfTable table 之前和之后给出空格

table.setSpacingBefore();      

table.setSpacingAfter(); 

【讨论】:

  • 您好,感谢您的回复,我需要避免两个表之间的默认间隙,这意味着表之间没有空格
  • 试试这个tb1.setSpacingBefore(0f);,其中 tb1 是第二个表对象
  • 我没有使用 PdfPTable,我使用的是 com.lowagie.text.Table 并且它只有 setSpacing() 方法
  • 我想在 com.lowagie.text.Table 中找到任何方法,它会从前一个组件中删除空间,为什么不切换到 com.itextpdf
  • 我根据用户选择使用 pdfwriter 和 rtfwriter 获取相同的代码,但如果我使用 itextpdf,我认为代码也应该更改
猜你喜欢
  • 1970-01-01
  • 2013-03-16
  • 2014-11-28
  • 2012-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-11
相关资源
最近更新 更多