如何使用itext增加PDF表格的某些部分而不是整个表格的单元格空间?

时间:2013-05-16 11:15:34

标签: java itext

我使用PDFTable和itext版本5.2.1创建了pdf页面 我创建了一个定义字体,单元格间距等的方法。 这是代码:

Cell textColspanCenter(String staticdata, Font font, int colspan, int rowspan, int border) {
        try {
            cell = new PdfPCell(new Phrase(staticdata, font));
            cell.setColspan(colspan);
            cell.setRowspan(rowspan);
            cell.setHorizontalAlignment(Element.ALIGN_CENTER);
            cell.setBorder(border);
            cell.setPadding(4.0f);
            if (border == 1) {
                cell.setBorder(Rectangle.BOX);
            }
            return cell;
        } catch (Exception e) {
            System.out.println("errorin textColspanLeft " + e);
            return null;
        }

我已经将填充设置为4 ..但是我的客户想要一些部分(单元格,用户将在其中写入数量,如果它们彼此太靠近,则很难将数量与其来源匹配,因为它没有任何边界我的页面之间有比其他人更多的空间(不是整个表格)...... 所以我尝试更改cell.setPadding值,但它会更改整个表的填充。所有元素最终都有更多的空间...... 我尝试改变了rowspan值,但它弄乱了我整个桌子...... 任何帮助表示赞赏...谢谢

1 个答案:

答案 0 :(得分:0)

我猜你在谈论桌子。见这个例子:

float[] columnWidths = new float[] {10f, 20f, 30f, 10f};
table.setWidths(columnWidths);

如果你想要从一行到另一行的不同单元格宽度,那么你必须定义一个与当前行相近的新表。据我所知,这是唯一的方法。

如果有人知道其他方式,那对我也有帮助。 :)