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
È stato utile?

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
scroll top