Some test text!

menu
Cordovakeyboard_arrow_down

Get started with WebViewer & Cordova

This guide will help you integrate a free trial of WebViewer into Cordova applications on the browser. It will help you clone the Cordova sample repository, walk through the project structure, and show you how to call other WebViewer APIs. Your free trial includes unlimited trial usage and support from solution engineers.

Note: There are other approaches that can be used to integrate PDFTron technology with Cordova. Please see this FAQ page to find out more about the relative strengths of each approach.

linkPrerequisites

Node.js is not required for WebViewer
WebViewer does not require Node, npm, or node_modules. It is only recommended to run the samples.
  • Cordova CLI

    npm install -g cordova

    You may have to restart your Command Prompt to access Cordova commands.

No trial license key required.
The trial of PDFTron SDK works without a license key. A commercial license key is required for use in a production environment. Please fill out our licensing form if you do not have a valid license key.
Keep your commercial license key confidential.
License keys are uniquely generated. Please make sure that it is not publicly available (e.g. in your public GitHub).

linkInitial setup

  1. Clone the webviewer-cordova-sample repository:

    git clone https://github.com/PDFTron/webviewer-cordova-sample.git
  2. Enter the directory and run npm install:

    cd webviewer-cordova-sample
    npm install

    This will automatically download and extract the PDFTron WebViewer Package.

You are now ready to run the sample or use more WebViewer APIs.

linkSample overview

After initial setup, the webviewer-cordova-sample directory should be laid out like this:

webviewer-cordova-sample
├── LICENSE
├── package.json
├── package-lock.json
├── README.md
├── node_modules
│   ├── ...
├── hooks
│   ├── ...
├── res
│   ├── ...
├── platforms
│   └── browser
|       ├── ...
└── www
    ├── index.html
    ├── js
    |   ├── lib
    |   |   ├── ...
    |   └── index.js
    ├── css
    |   └── index.css
    └── img
        └── logo.png

Notable files and directories include:

File/FolderDescription
LICENSELists the copyright and license information.
package.jsonLists the manifest of the project and contains the author/version metadata.
platformsContains the platform specific directories and files required to run the project. The npm install will add the browser platform by default.
wwwContains all the assets such as the main HTML page index.html, the WebViewer libraries (in /js/lib/) as well as the JavaScript files that are used for the sample.

www/js/index.js instantiates the WebViewer in the viewer element outlined by index.html. It is also where the WebViewer API calls are placed.

linkRun the sample

  1. Run the application by executing:

    npm start

    Note: If your build fails, use the following command to see a list of requirements for your added platforms:

    cordova requirements

    Your app should look like this:

    Cordova WebViewer Sample

linkUse more WebViewer APIs

To call more WebViewer APIs, open /www/js/index.js in your favorite text editor and add the API calls to the callback for the WebViewer instantiation:

WebViewer({
  path: "js/lib",
  pdftronServer: 'https://demo.pdftron.com/', // Make sure to change this option to point to your own server in production
  initialDoc: 'https://pdftron.s3.amazonaws.com/downloads/pl/sample.pdf',
  enableAnnotations: true,
  disabledElements: [
    'menuButton'
  ]
}, document.getElementById('viewer'))
  .then(function(instance) {
    var docViewer = instance.docViewer;
    var annotManager = instance.annotManager;
    // call methods from instance, docViewer and annotManager as needed.
    // you can also access major namespaces from the instance as follows:
    // var Tools = instance.Tools;
    // var Annotations = instance.Annotations;
 
    // See https://www.pdftron.com/documentation/web/guides/basic-functionality for more info.
    docViewer.on('documentLoaded', function() {
      // call methods relating to the loaded document
    });
  });

For example, if you want to change the theme of the WebViewer to dark mode, you would add the following:

instance.setTheme('dark');

Execute npm start again and the theme of the viewer will change.

Cordova Sample Dark

linkNext step

GuidesSamplesAPI docs

Get the answers you need: Support

close

Free Trial

Get unlimited trial usage of PDFTron SDK to bring accurate, reliable, and fast document processing capabilities to any application or workflow.

Select a platform to get started with your free trial.

Unlimited usage. No email address required.

Join our live demo to learn about use cases & capabilities for WebViewer

Learn more
close