2011-10-07 18 views
7

Voglio creare un PdfPTable con colonne contenenti stringhe di lunghezze diverse. Ho imparato che la larghezza di ogni cella/colonna è la stessa per ogni colonna (impostazione predefinita) o che è possibile impostare la frazione di spazio che ogni colonna occuperà.Come rendere PdfPTable calcolare dinamicamente la larghezza della colonna

Tuttavia, desidero che le colonne siano ampie quanto necessario, ma non più larghe, a seconda dei dati inseriti. Supponiamo che il tavolo si adatti facilmente alla pagina (nessuna interruzione!). Naturalmente, posso passare manualmente tutti i miei dati e calcolare la lunghezza massima della stringa di ogni colonna, impostando le proprietà della tabella di conseguenza, ma mi chiedevo se tale opzione comune fosse già fornita da itext stessa.

risposta

3

iText non è HTML, quindi non ha opzioni per regolare automaticamente la larghezza, è invece orientato alla pagina e quindi devi decidere la larghezza, sia come valori percentuali che assoluti.

Ho paura che per fare ciò che chiedi, devi implementare la tua estensione misurando le larghezze, come hai detto tu. Vedi how to calculate the string with with iText.

+0

Come impostare la larghezza in%? –

-2

Defila la larghezza relativa delle colonne float [] columnWidths = new float [] {10f, 20f, 30f, 10f}; table.setWidths (columnWidths);

in base a questo link: enter link description here

Problemi correlati