2014-04-07 8 views
12

Sono abbastanza nuovo in iTextSharpt (il iText porting per C#) e ho il seguente dubbio.Come si può aggiungere spazio margine tra due elementi in iTextSharp iText?

Nel mio codice ho qualcosa di simile:

iTextSharp.text.Paragraph titolo = new iTextSharp.text.Paragraph(currentVuln.Title, _fontTitolo0); 
titolo.Alignment = iTextSharp.text.Element.ALIGN_CENTER; 
_document.Add(titolo); 

table = new PdfPTable(3); 
table.WidthPercentage = 98; 

cell = new PdfPCell(new Phrase("Header spanning 3 columns")); 
cell.Colspan = 3; 
cell.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right 
table.AddCell(cell); 

table.AddCell("Col 1 Row 1"); 
table.AddCell("Col 2 Row 1"); 
table.AddCell("Col 3 Row 1"); 
table.AddCell("Col 1 Row 2"); 
table.AddCell("Col 2 Row 2"); 
table.AddCell("Col 3 Row 2"); 

_document.Add(table); 

Come potete vedere ho semplicemente stampare un titolo (usinga Paragrafo oggetto) e sotto di essa un luogo un tavolo.

Il problema è che non c'è spazio (margine) tra il mio titolo e mio tavolo e il risultato grafico non è buono, questo è quello che ottengo nel PDF generato:

enter image description here

Cosa può fare Devo aggiungere un po 'di spazio \ margine tra il paragrafo del titolo e il tavolo? Qual'è il miglior modo di farlo? Sto cercando di farlo, ma, fino ad ora, ho trovato nessuna soluzione

Tnx

risposta

37

Hai un paio di opzioni diverse. È possibile impostare la SpacingAfter sul paragrafo:

titolo.SpacingAfter = 20; 

È anche possibile impostare il SpacingBefore sul tavolo:

table.SpacingBefore = 20; 

o si può solo aggiungere alcuni ritorni al paragrafo:

iTextSharp.text.Paragraph titolo = new iTextSharp.text.Paragraph("Hello World\n\n"); 
+0

l'unità qui è pixel? 20 pixel? – anhtv13