2013-02-08 16 views
8

Sto usando l'opensource http://itextpdf.com/, per creare del pdf.imposta la larghezza della cella della tabella in iText java pdf

Potrei creare una tabella, ma la larghezza di tutte le colonne è la stessa, ho bisogno di cambiare la larghezza della particolare colonna.

PdfPTable table = new PdfPTable(6); 
Phrase tablePhrse = new Phrase("Sl n0", normalFontBold); 
    PdfPCell c1 = new PdfPCell(tablePhrse); 
    c1.setHorizontalAlignment(Element.ALIGN_CENTER); 
    table.addCell(c1); 

non riuscivo a trovare un metodo per impostare la larghezza della colonna, pls suggerire qualche modo per fare ottenere questo ..

+0

Si può fare uso di 'column.setPreferredWidth (100);' – Smit

+0

non riuscivo a trovare il metodo (100) sotto PdfTable o PdfCell .. .setPreferredWidth – indra

+0

dispiace ho capito male. Penso che tu possa usare 'table.setTotalWidth(); 'e' table.setWidths(); ' – Smit

risposta

18

si può fare uso di setWidths (metodo).

table.setWidths(new int[]{200,50}); 

public void setWidths(int[] relativeWidths)

+2

Il numero di itens nell'array deve essere uguale al numero di colonne definito nel costruttore PdfPTable – dellasavia

+0

@dellasavia: Grazie per averlo indicato, ma questo era un esempio. – Smit

0

Ecco il corretto uno se table.setWidths(new int[]{200,50}); non funziona.

innertable.setWidthPercentage(50); 
0

Ciao a tutti ..
provare questo.

float[] columnWidths = new float[]{10f, 20f, 30f, 10f}; 
table.setWidths(columnWidths); 
+0

Quale consideri il vantaggio del tuo codice rispetto a quello nella risposta accettata? – mkl

Problemi correlati