JPG

PDF to JPG

Render either one selected PDF page or every page as JPG. Each page is drawn by PDF.js to a canvas at scale 2 and encoded as JPEG at browser quality 0.92; multiple page images are downloaded together in a ZIP.

Browser-first workflowProcessing details below

What PDF-to-JPG conversion captures

This is page rendering, not embedded-image extraction. Text, vectors, images, annotations that PDF.js renders, and the page background are flattened into pixels. The resulting JPG has no selectable text, live links, forms, layers, or vector scalability.

Specific Page mode clamps the requested number to the detected page range. All Pages mode creates one JPG per page and uses JSZip when more than one image is produced.

How to use this tool

  1. Choose a PDF: Select the file and wait for the first-page preview and page count.
  2. Choose page scope: Select Convert All Pages or Convert Specific Page. For one page, enter a number within the detected range.
  3. Render to JPG: Start conversion and keep the tab open while PDF.js paints each page to canvas.
  4. Download and inspect: Save the JPG or ZIP and check small text, colour, annotations, and page edges at the intended display size.

Input and output

Input

  • One PDF file that PDF.js can render
  • Either All Pages or one page number

Output

  • One JPEG file when a single page is rendered
  • A ZIP containing sequential JPG files when multiple pages are rendered

How PDF pages are rendered to JPEG

Render at scale 2

PDF.js obtains a viewport at scale 2, creates a canvas of that size, and renders the page into its 2D context.

Flatten to JPEG

Canvas exports the rendered pixels as image/jpeg with quality 0.92. Interactive PDF structures are no longer interactive.

Name and package

Images receive source-name_page-N.jpg filenames. Multiple results are placed in a ZIP by the shared document workflow.

Exporting one page for a presentation

Scenario
Page 4 of a PDF is needed as a static slide image.
Action
Choose Specific Page, enter 4, and convert.
Input
A multi-page PDF with a diagram on page 4
Expected result
The page is rendered to one JPG. Its apparent sharpness depends on the PDF page dimensions, the fixed 2× scale, and later display size.

Rendering and JPEG limitations

  • The rendering scale is fixed at 2; there is no DPI, dimension, or JPEG-quality control.
  • This exports page renderings and does not extract original embedded image files.
  • Text becomes pixels and is no longer searchable, selectable, or editable in the JPG.
  • Links, forms, layers, video, scripts, signatures, and document metadata are not represented as interactive features.
  • JPEG is lossy and has no transparency channel.
  • Rendering every page of a long or large-format PDF can consume substantial memory before ZIP creation.
  • Protected or malformed PDFs can fail; supported protected files require the shared local unlock step.

Frequently Asked Questions

Does this extract the original photos from a PDF?

No. It renders each whole page, so all visible page content is flattened into one JPG.

What resolution is used?

The implementation uses a PDF.js viewport scale of 2. It does not expose a DPI or pixel-dimension selector.

Why can I no longer select text?

JPEG stores pixels, not PDF text objects. The page is intentionally flattened during rendering.