How to rotate a page 90 degrees?

Tags: page rotationiText 7

I am trying to use a PDF for stamping and need to rotate it 90 degrees to lay it on correctly? Anyone know how to do this?

Posted on StackOverflow on Nov 19, 2014 by Casey

Please take a look at the Rotate90Degrees example.

In this example, we create a PdfDocument to get an instance of the document, and just change the /Rotate value in every page dictionary (if there is no such entry, we add one with value 90):

PdfDocument pdfDoc = new PdfDocument(new PdfReader(src), new PdfWriter(dest));
int n = pdfDoc.getNumberOfPages();
PdfPage page;
PdfNumber rotate;
for (int p = 1; p <= n; p++) {
        page = pdfDoc.getPage(p);
        rotate = page.getPdfObject().getAsNumber(PdfName.Rotate);
        if (rotate == null) {
            page.setRotation(90);
        } else {
            page.setRotation((rotate.intValue() + 90) % 360);
        }
}

Once this is done, we use pdfDoc.close() to persist the change.

If you want an iText for C# example, you'll discover that it is very easy to port the Java to C# as the terminology is identical.

Click this link if you want to see how to answer this question in iText 5.