Как добавить заголовок страницы без первой страницы itext 7 - PullRequest
0 голосов
/ 05 июля 2018

Я создал документ, используя pdfHTMl в Text 7. Я хочу добавить заголовок страницы для каждой страницы без первой страницы. Я использовал событие PdfDocumentEvent.END_PAGE. Но это относится к каждой странице с первой страницей. Как убрать заголовок страницы с первой страницы? Спасибо.

1 Ответ

0 голосов
/ 05 июля 2018

Это пример обработчика событий, который добавляет заголовок:

protected class MyEventHandler implements IEventHandler {

    PdfFont helvetica;

    public MyEventHandler() throws IOException {
        helvetica = PdfFontFactory.createFont();
    }

    public void handleEvent(Event event) {
        PdfDocumentEvent docEvent = (PdfDocumentEvent) event;
        PdfDocument pdfDoc = docEvent.getDocument();
        PdfPage page = docEvent.getPage();
        Rectangle pageSize = page.getPageSize();
        int pageNumber = pdfDoc.getPageNumber(page);
        if (pageNumber == 1) return;
        PdfCanvas pdfCanvas = new PdfCanvas(
            page.newContentStreamBefore(), page.getResources(), pdfDoc);
        pdfCanvas.beginText()
            .setFontAndSize(helvetica, 9)
            .moveText(pageSize.getWidth() / 2 - 30, pageSize.getTop() - 20)
            .showText("THIS IS A HEADER!")
            .endText();
        pdfCanvas.release();
    }
}

Из-за if (pageNumber == 1) return; заголовок не будет добавлен. поэтому нет необходимости удалять заголовок. Как вы можете видеть на скриншоте, на первой странице нет заголовка, но есть заголовок на каждой следующей странице.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...