tags:

views:

1516

answers:

2

Im trying to add a table to a document using iTextSharp. Here is an example:

Document document = new Document(PageSize.LETTER,72, 72, 72, 72);
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("C:\\test.pdf", FileMode.Create));

document.Open();
Table table = new Table ( 2, 1 );
table.Width = document.RightMargin - document.LeftMargin;

// Cell placeholder
Cell cell = new Cell ( new Paragraph ( "Some Text" ) );
table.AddCell ( cell );
cell = new Cell ( new Paragraph ( "More Text" ) );
table.AddCell ( cell );
document.Add ( table );
document.Close ( );

Im setting the width of the table so that it should extend the margin of the page. But when the pdf is created the table only takes about 80% of the space between the margin's. Am I doing something incorrectly here?

+1  A: 

Figured it out. Apparently table.Width is a percent and not the width in pixels. So using:

table.Width = 100;

Worked like a charm.

Zenox
A: 

In iTextSharp latest version (5.0.4) the PdfPTable has a WidthPercentage property.

To set a static value the property is TotalWidth.

DrDro