Document Presentation Options
PSPDFKit offers many ways to present your documents, and this guide article will give you an overview of the available options. You can configure the page transition, scroll direction, and scroll mode in PdfConfiguration
. You can also configure them inside the PdfActivity
using the SettingsModePicker
.

You need to be aware of the following constraints when using these PdfConfiguration
properties (scrollMode
, scrollDirection
, and layoutMode
) simultaneously.
PageScrollMode#PER_PAGE
If the scroll mode is PageScrollMode#PER_PAGE
, there are no constraints:
- The
scrollDirection
property can be eitherPageScrollDirection#HORIZTONTAL
orPageScrollDirection#VERTICAL
. - The
layoutMode
property can bePageLayoutMode#SINGLE
,PageLayoutMode#DOUBLE
, orPageLayoutMode#AUTO
.
1 2 3 4 5 | val configuration = PdfActivityConfiguration.Builder(context) .scrollMode(PageScrollMode.PER_PAGE) .scrollDirection(PageScrollDirection.VERTICAL) // Can also be `HORIZONTAL`. .layoutMode(PageLayoutMode.SINGLE) // Can also be `DOUBLE`, or `AUTO`. .build() |
1 2 3 4 5 | PdfActivityConfiguration configuration = new PdfActivityConfiguration.Builder(context) .scrollMode(PageScrollMode.PER_PAGE) .scrollDirection(PageScrollDirection.VERTICAL) // Can also be `HORIZONTAL`. .layoutMode(PageLayoutMode.SINGLE) // Can also be `DOUBLE`, or `AUTO`. .build(); |
PageScrollMode#CONTINUOUS
If the scroll mode is PageScrollMode#CONTINUOUS
:
- The
scrollDirection
property can be eitherPageScrollDirection#HORIZTONTAL
orPageScrollDirection#VERTICAL
. - The
layoutMode
property can only bePageLayoutMode#SINGLE
; setting other values has no effect and will default toPageLayoutMode#SINGLE
.
1 2 3 4 5 | val configuration = PdfActivityConfiguration.Builder(context) .scrollMode(PageScrollMode.CONTINUOUS) .scrollDirection(PageScrollDirection.VERTICAL) // Can also be `HORIZONTAL`. .layoutMode(PageLayoutMode.SINGLE) // This will always be forced to `SINGLE`. .build() |
1 2 3 4 5 | PdfActivityConfiguration configuration = new PdfActivityConfiguration.Builder(context) .scrollMode(PageScrollMode.CONTINUOUS) .scrollDirection(PageScrollDirection.VERTICAL) // Can also be `HORIZONTAL`. .layoutMode(PageLayoutMode.SINGLE) // This will always be forced to `SINGLE`. .build(); |