0

我正在使用 HeaderFooter 对象创建带有 iText 的标题。
页码总是出现在标题的第二行,即使第一行有足够的空间,我也没有明确地在那里放置换行符。

这个问题似乎是从 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
4

1 回答 1

2

对于所有感兴趣的人,我想通了。通过将 HeaderFooter 参数从 Paragraph 更改为 Phrase,问题就解决了。

更改此行:

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

对此:

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

问题已关闭!

于 2009-06-24T16:01:49.370 回答