Some test text!

Loading...
Guides
Create a thumbnail

Generate PDF page thumbnails using JavaScript

Page thumbnails are rendered image representations of the page they are generated from.

The SDK API has the flexibility to alter the resolution or size of the thumbnail output and whether to include annotations or not.

Create a basic page thumbnail

To create a basic PDF page thumbnail where the result is a HTMLCanvasElement or HTMLImageElement.

WebViewer(...)
  .then(instance => {
    const { documentViewer } = instance.Core;
    documentViewer.addEventListener('documentLoaded', () => {
      const doc = documentViewer.getDocument();
      const pageNum = 1;
      doc.loadThumbnailAsync(pageNum, (thumbnail) => {
        // thumbnail is a HTMLCanvasElement or HTMLImageElement
        console.log(thumbnail);
      });
    });
  });

Create a High resolution page image (png or jpg) with annotations

To create a high resolution page thumnbails and optionally with annotations where the result is a HTMLCanvasElement or HTMLImageElement.

WebViewer(...)
  .then(instance => {
    const { documentViewer } = instance.Core;
    documentViewer.addEventListener('annotationsLoaded', () => {
      const doc = documentViewer.getDocument();
      const pageNumber = 1;
      const zoom = 2; // render at twice the resolution
      
      doc.loadCanvasAsync(({
        pageNumber,
        zoom,
        drawComplete: async (thumbnail) => {
          const corePageRotation = (doc.getPageRotation(pageNumber) / 90) % 4;
          annotationManager.setAnnotationCanvasTransform(thumbnail.getContext('2d'), zoom, corePageRotation);

          // optionally comment out "drawAnnotations" below to exclude annotations
          await instance.Core.documentViewer.getAnnotationManager().drawAnnotations(pageNumber, thumbnail);
          // thumbnail is a HTMLCanvasElement or HTMLImageElement
          console.log(thumbnail);
        }
      }));
    });
  });

Get the answers you need: Support

Upcoming Webinar: PDFTron SDK Tech Review | Nov 29, 2022 at 2 pm ET

PDFTron SDK

The Platform

NEW

© 2022 PDFTron Systems Inc. All rights reserved.

Privacy

Terms of Use