iText HeaderFooter - il numero di pagina appare sulla riga successiva
Domanda
Sto creando un'intestazione con iText usando l'oggetto HeaderFooter.
Il numero di pagina appare sempre sulla seconda riga dell'intestazione, anche se c'è molto spazio sulla prima riga e non inserisco esplicitamente un'interruzione di riga.
Sembra che questo problema sia iniziato solo durante l'aggiornamento da iText 1.2 a iText 2.1.5, ma non ho notato nulla di ovvio nel codice sorgente di iText.
Qualcun altro ha avuto questo problema o sa come risolverlo?
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);
L'output appare così:
Report Title Page:
1
Soluzione
Per tutti coloro che sono interessati, l'ho capito. Modificando il parametro HeaderFooter su Frase, da Paragrafo, il problema è stato risolto.
Cambia questa riga:
HeaderFooter header = new HeaderFooter(new Paragraph(headString, iTextHeadingFont), true);
A questo:
HeaderFooter header = new HeaderFooter(new Phrase(headString, iTextHeadingFont), true);
Problema chiuso!
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow