Working with PDFs


Kiosk Pro can display PDF files. The app supports links and specific types of widgets embedded in PDFs.

Other more advanced features, including form fill-in within a PDF, audio or video playback within a PDF, and search within a PDF, are not currently supported.

We highly recommend finding a sample file to view in Kiosk Pro before purchasing the app or spending time in development to ensure that this format can meet your project's requirements.

Kiosk Pro Lite uses the native PDF viewer built into the WKWebView browser engine to display PDFs. To customize the viewing experience, all paid versions of Kiosk Pro use a different library to display PDFs, which can result in display differences.

Navigating within a PDF

By default, Kiosk Pro allows visitors to swipe through a PDF document page by page.

In paid versions of the app, it is also possible to limit navigation to hyperlinks only to create a PDF presentation that feels more like a native web experience or to opt for a page turn animation that feels more like a physical book or magazine. See Page Transition Style for more information.

In Kiosk Pro and Kiosk Pro Enterprise, it is possible to show the navigation bar while viewing PDF and other documents while hiding it for other types of content like HTML web pages.

If the navigation bar is shown, a PDF Multipage icon is displayed when viewing PDFs to allow the visitor to shift to a multipage view that displays thumbnails of each page and more easily navigate through the document. This icon can be disabled in Kiosk Pro Plus or Kiosk Pro Enterprise using the Show PDF Multipage Icon setting.

Customizing the PDF View

Paid versions of the app include the following settings to customize how PDFs are displayed:

URL Parameters with PDFs

Kiosk Pro supports specific URL parameters to allow you to customize how a specific PDF is displayed. The following are supported:



Paid versions of Kiosk Pro support printing standard document-size PDFs via AirPrint. Smaller receipt/ticket-style PDFs can be printed through one of the thermal kiosk printer integrations in Kiosk Pro Enterprise.

Printing of a PDF can be triggered manually by a visitor through the print icon in the bottom navigation or automatically by an HTML page through a call to one of our JavaScript APIs.

External Screens

All versions of Kiosk Pro support the native screen mirroring built into iOS/iPadOS, including the mirroring of PDFs displayed within Kiosk Pro.

Kiosk Pro Enterprise includes a JavaScript API that allows you to send full-screen content, including PDFs, to a connected external screen. This allows you to treat the iPad as a controller for the external screen without direct mirroring. More information on working with external screens is available here .

Troubleshooting PDFs

PDF takes a long time to load?

If your PDF file is taking longer than expected to load, there are a couple of things you may want to try:

Optimize your PDF for web

Web optimization will make the file smaller and will take significantly less time for loading. To optimize your PDF, open it in Acrobat Pro, click on the Advanced tab and then click on PDF Optimizer. This shows you what is going to be optimized. Click OK and save the file.

Reduce the size of your PDF

The best way to reduce the size of a PDF is before the native file is created into a PDF. In the program you used to create the PDF, here are things to check for the web:

  • Images – reduce to 72 dpi and flatten
  • Fonts – un-embed as many fonts as possible, especially common ones such as Helvetica, Times, Garamond
  • Transparencies – remove or reduce resolution to low.
  • Discard user-related information (comments, attachments, etc.)

A specific PDF is not displaying?

Kiosk Pro’s PDF viewer requires that the file be downloaded prior to being displayed to allow support for page thumbnails, navigation, and other display options.  If a web server is not configured to allow downloading of a PDF, the app's built-in viewer will be unable to display it.  In this scenario, the native PDF viewer built into WKWebView or UIWebView browser component may be used to display the file.

The native PDF viewer can be used for a specific document by including the URL parameter kp_useNativeBrowserPDFViewer in the link to the PDF. For example:

In paid versions of the app, it is also possible to configure the app to use the native PDF viewer when opening any PDF through a Remote Settings Control or Managed App Configuration update. 

PDF doesn't print at correct size?

There is a print sizing issue with dynamically-created PDFs that don't include the filetype suffix .pdf. In this situation, Kiosk Pro is unable to identify the document as a PDF and uses the default sizing used by the underlying browser component. This is a bug which affects all versions of Kiosk Pro. More information on this can be found here.

PDF issues with links?

These 2 parameters are available for looking at and resizing links for troubleshooting purposes:

  • kp_pctIncreaseOfLinkRect=[0..100] - this integer parameter increases the size of the link rectangle by a percentage (default = 0).
  • kp_highlightLinks=[0,1] - this is a debugging parameter (boolean) that will highlight all links and specific (named action) widgets with the color purple (default = 0).

  • If you continue to have issues after trying these things, let us know and we can help troubleshoot your issue.

    Change Log

    • Added 'page' parameter in version 10.0.3. Added 'title' parameter in version 10.1.
    • Added 'kp_sizeToFit' and 'kp_useNativeBrowserPDFViewer' parameters in version 11.0.

    Still stuck? How can we help? How can we help?