在itextPdf表边框上写一个标题

时间:2016-03-02 12:01:56

标签: android itextpdf pdfptable

我正在使用iTextPdf在Android应用程序上创建表。

我需要在其上边框上显示表格的标题,如下图所示。

table with title on border

我怎样才能做到这一点? 提前致谢

1 个答案:

答案 0 :(得分:0)

请查看CellTitle示例。它创建了一个PDF,在单元格边框上添加了标题:cell_title.pdf

enter image description here

这是通过使用cell event

来完成的
class Title implements PdfPCellEvent {
    protected String title;

    public Title(String title) {
        this.title = title;
    }

    public void cellLayout(PdfPCell cell, Rectangle position,
        PdfContentByte[] canvases) {
        Chunk c = new Chunk(title);
        c.setBackground(BaseColor.LIGHT_GRAY);
        PdfContentByte canvas = canvases[PdfPTable.TEXTCANVAS];
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, 
            new Phrase(c), position.getLeft(5), position.getTop(5), 0);
    }
}

可以使用PdfPCell方法将单元格事件添加到setCellEvent()

public PdfPCell getCell(String content, String title) {
    PdfPCell cell = new PdfPCell(new Phrase(content));
    cell.setCellEvent(new Title(title));
    cell.setPadding(5);
    return cell;
}

下次,请在提问之前展示您尝试过的内容。另请查看official documentation,因为您自己回答问题所需的一切内容都可以在iText网站上找到。