Optimizing PDF files in Android for fast viewing

Viewer optimized PDF is a unique way of near-instantaneous loading and viewing of remotely stored PDFs regardless of their size or complexity. A Viewer optimized file is an optimized PDF document that allows the Viewer to display a document preview even before all client-side components are loaded. In the past, a Viewer could stream arbitrary large documents for viewing optimization using standard PDF linearization, but we have extended this concept to support fast viewing of complex pages which are slow to render as well.

Create a viewer optimized PDF

To optimize a PDF, use the SaveViewerOptimized function with default or custom settings on desktop or server.

Java

1PDFDoc doc = new PDFDoc(filename);
2
3// Options for SaveViewerOptimized
4ViewerOptimizedOptions options = new ViewerOptimizedOptions();
5
6// A number from 0 (include all thumbnails) to 100
7// (include only the first thumbnail). The default value is 50.
8options.setThumbnailRenderingThreshold(0);
9
10// The maximum allowed length for the thumbnail's height/width.
11// The default thumbnail size is 1024.
12options.setThumbnailSize(1024);
13
14// Optimize pdf
15doc.saveViewerOptimized(output, options);

Compress & optimize PDF files
Full sample code shows how to use SaveViewerOptimized to embed thumbnails with a PDF file which will enable fast rendering in the viewer.

Create a viewer optimized PDF using DocPub

DocPub is a command-line utility which provides an alternative way of generating viewer optimized PDF files.

To create a viewer optimized PDF, use the command docpub -f pdf --viewer_optimized file.pdf.

sh

1./docpub -f pdf --viewer_optimized demo.pdf --fname demo.optimized.pdf

Open a viewer optimized PDF

The opening of the optimized PDF is no different than opening regular PDF files. By default, the Viewer is able to recognize a PDF that is Viewer optimized and will utilize this enhancement.

Did you find this helpful?

Trial setup questions?

Ask experts on Discord

Need other help?

Contact Support

Pricing or product questions?

Contact Sales