iText(sharp) side margins width

24,417

Solution 1

I am using PdfPTable and the problem was default PdfPTable horizontal alignment which is CENTER. As soon as I set alignmentof table to left problem went away.

PdfPTable bTable = new PdfPTable(2);
bTable.HorizontalAlignment = Element.ALIGN_LEFT;

Thanks, Velja

Solution 2

Well, I think that the problem is different. By default, PdfPTable.LockedWidth property is set to false, and PdfPTable.WidthPercentage is equal to 80f. As long as default table alignment is Center you get the impression that your margins are not honoured... but they are! You sipmly need to set PdfPTable.WidthPercentage = 100f.

Solution 3

Your problem may have to do with how you are adding the content to your document. If you are using a Table (instead of a PdfPTable), even if you have a left margin of 0, the table will still be placed indented from the left margin by default.

The default spacing works out to be about 10% of the width of the printable page area. So the left edge of the Table would be placed at ( 0.10 * (pageWidth - leftMargin - rightMargin)).

10% of 6 inches (at 72 pts per inch) is equal to 43.2 pts, pretty close to the 42 pts you are getting.

Share:
24,417
Velja Radenkovic
Author by

Velja Radenkovic

Updated on August 13, 2020

Comments

  • Velja Radenkovic
    Velja Radenkovic almost 4 years

    It looks like I can't set left margin to be less then 42pt width. I am setting it to 0f but it always ends as 42pt. If I set margin to any number greater then 0 it just adds it to initial margin of 42pt. I am setting margin of document object:

    iTextSharp.text.Rectangle docRect = new iTextSharp.text.Rectangle(pageWidth, pageHeight);
    DC = new Document(docRect);
    DC.SetMargins(0f, 0f, 0f, 0f);
    

    Page width and height are 6x9 in.

    And I end with:

    42pt margin|CONTENT CONTENT

    I would appreciate any help. Thanks.