IBM Support

PDF DOCUMENT RENDERING ON THE CLIENT

Technical Blog Post


Abstract

A new option is now available which enables rendering PDF documents and generating the image tiles directly on the client inside the browser.

Body

In IBM Daeja ViewONE Virtual, the default main document display is composed of image tiles.
Documents are rendered on the server and image tiles are generated for each page.
The Viewer fetches these images from the server across the network which could produce many network requests.
The page displaying speed is bounded by the performance of the network between the client and server, and the available resources on the server.

A new option is now available which enables rendering PDF documents and generating the image tiles directly on the client inside the browser.
The PDF document is cached on the ViewONE server and then the entire document is delivered to the client where the individual pages are rendered on demand.

Moving the rendering process to the client provides a number of advantages:

  • The viewer retrieves the rendered page image from the rendering engine on the client which removes the need to fetch these images from the server, thereby reducing the network traffic.
  • Processing load on the server is reduced, freeing up resources for other tasks.
  • Navigation performance is less impacted by server load. The server is only responsible for the initial delivery of the entire document to the client.
  • Retrieving page images directly from the client improves performance of page navigation, especially where network performance is slow.
  • Rendered pages are no longer generated and cached on the server which reduces the disk access and usage.
  • The document is rendered at a higher fidelity especially when the pages are zoomed in.

Differences with server side rendering:

  • The entire document must be delivered to the client before the first page can be rendered.  
  • For PDF documents that have non-embedded fonts, the text that is rendered may differ.
    It is dependent on the operating system, browser, and fonts available on the client machine.
    This means there may be slight differences in the rendered image when viewed from different browsers or client machines.
  • Native PDF annotations may appear slightly differently.
  • Printing of PDF documents are done on the server and uses the rendering engine on the server.
    Depending on your printing options, the generated printable PDF could have slight differences to the image seen on the client.
    This applies to PDFs that fall into any of the categories below:
    • Include annotations of type: Ruler, Angle, Image Stamps, Arrows, Text annotation with text rotation applied.
    • For PDF documents that are digitally signed.
    • When the viewer is configured for Page<N>
  • For faster navigation through pages, image tiles are always generated for the 7 pages before and the 7 pages after the current page.

Limitations:

  • Enhancement mode is not supported for PDF documents rendered on the client. The pages are rendered at a higher fidelity and anti-aliasing is no longer required.
  • Zooming is capped at 10 times the actual size. This is rendered at high fidelity.
    Zooming beyond this scale will stretch the image to the required size.

Enabling client rendering of PDF documents:
The option was first introduced in 5.0.5 . There is a new clientPDFTileGeneration HTML parameter to render PDF documents on the client.
Setting this to 'true' will render the document on the client. The default is false for 5.0.5.

Since 5.0.6 rendering of PDF documents on the client (clientPDFTileGeneration=true) is the default.
The ability to render PDF documents on the server (clientPDFTileGeneration=false) has been deprecated and will be removed in a future release. It is now only supported as-is with no fixes or other changes made.

NOTE If clientPDFTileGeneration is set to false the following features will be unavailable:
- ER152961 Text searching in PDF documents
- PDF Text Selection Mode for client side rendered documents.
- PDF Text Copy for client side rendered documents.
- ER178608 Support for password protected PDF documents

UID

ibm10885518