Напишите заголовок на границе таблицы itextPdf

Я использую iTextPdf создать таблицу на Android-приложении.

Мне нужно иметь заголовок таблицы на верхней границе, как показано на рисунке ниже.

таблица с заголовком на границе

Как мне этого добиться? заранее спасибо

1 ответ

Пожалуйста, посмотрите на пример CellTitle. Он создает PDF, в котором заголовки добавляются на границе ячейки: cell_title.pdf

введите описание изображения здесь

Это достигается с помощью события ячейки:

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;
}

В следующий раз покажите, что вы пробовали, прежде чем задавать вопрос. Также ознакомьтесь с официальной документацией, поскольку все, что вам нужно, чтобы самостоятельно ответить на свой вопрос, было доступно на веб-сайте iText.

Другие вопросы по тегам