iText HeaderFooter - номер страницы появляется на следующей строке - PullRequest
0 голосов
/ 24 июня 2009

Я создаю заголовок с помощью iText, используя объект HeaderFooter.
Номер страницы всегда появляется во второй строке заголовка, даже если в первой строке достаточно места, и я не ставлю там явно разрыв строки.

Кажется, эта проблема возникла только при обновлении с iText 1.2 до iText 2.1.5, но я не заметил ничего очевидного в исходном коде iText.

Кто-нибудь еще имел эту проблему, или знает, как ее решить?

headString +=  viewReportTitle + "Page: ";
//Setting the second param to true should append a page number at the end of the string
HeaderFooter header = new HeaderFooter(new Paragraph(headString, iTextHeadingFont), true);
header.setAlignment(Element.ALIGN_CENTER);
iTextDoc.setHeader(header);

Вывод выглядит так:

Report Title Page:
1

1 Ответ

2 голосов
/ 24 июня 2009

Для всех, кому интересно, я разобрался. При изменении параметра HeaderFooter на Phrase с Paragraph проблема была решена.

Изменить эту строку:

HeaderFooter header = new HeaderFooter(new Paragraph(headString, iTextHeadingFont), true);

К этому:

HeaderFooter header = new HeaderFooter(new Phrase(headString, iTextHeadingFont), true);

Проблема закрыта!

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