Rotating PDF Pages in Android
There are two options for rotating PDF pages. The first is rotating PDFViewCtrl, it will rotate all PDF pages temporarily. The second is rotating PDF pages using Page class, it will rotate selected PDF pages permanently.
Rotating PDFViewCtrl
If you want to rotate a PDFViewCtrl by 90 degrees clockwisely, just simply call PDFViewCtrl.rotateClockwise (). If you want to rotate the PDFViewCtrl by 90 degrees counter clockwisely, call PDFViewCtrl.rotateCounterClockwise (). After rotation, update the PDFViewCtrl pages layout by calling PDFViewCtrl.updatePageLayout().
pdfViewCtrl.rotateClockwise();
try {
pdfViewCtrl.updatePageLayout();
} catch (Exception e) {
e.printStackTrace();
}pdfViewCtrl.rotateClockwise()
try {
pdfViewCtrl.updatePageLayout()
} catch (e: Exception) {
e.printStackTrace()
}where pdfViewCtrl is the instance of PDFViewCtrl.
Rotating a PDF page
To rotate a PDF page by 90 degrees, call Page.setRotation(int). The parameter of this method is the rotation value, which is one of [0, 1, 2, 3]. It represents [0 degree, 90 degree, 180 degree, 270 degree] correspondingly. After rotation, update the PDFViewCtrl pages layout by calling PDFViewCtrl.updatePageLayout().
void rotatePage(final PDFViewCtrl pdfViewCtrl, final int pageNum, @IntRange(from = 0, to = 3) final int rotateValue) throws Exception {
// lock pdf doc
pdfViewCtrl.docLock(true, new PDFViewCtrl.LockRunnable() {
@Override
public void run() throws Exception {
// get pdf document
PDFDoc pdfDoc = pdfViewCtrl.getDoc();
// get page from page number
Page page = pdfDoc.getPage(pageNum);
page.setRotation(rotateValue);
// update page layout
pdfViewCtrl.updatePageLayout();
}
});
}fun rotatePage(pdfViewCtrl: PDFViewCtrl, pageNum: Int, @IntRange(from = 0, to = 3) rotateValue: Int) {
// lock pdf doc
pdfViewCtrl.docLock(true) {
// get pdf document
val pdfDoc = pdfViewCtrl.doc
// get page from page number
val page = pdfDoc.getPage(pageNum)
page.rotation = rotateValue
// update page layout
pdfViewCtrl.updatePageLayout()
}
}Rotating PDF pages
To rotate PDF pages, traverse each page and call Page.setRotation(int). The following example shows how to rotate all pages of a PDF document.
Last updated
Was this helpful?