How to convert PDF to JPG
- Drop your PDF into the zone above, or click to browse for a file.
- Choose an output quality: Standard for screen and email, High for presentations and web, or Best for printing and zooming in.
- Click Convert & download. A single PDF page downloads as one
.jpgfile. Multiple pages are bundled into a ZIP archive automatically.
The conversion runs entirely in your browser using pdf.js and the HTML5 Canvas API.
No file is sent to a server. Open DevTools (F12) and watch the Network tab while converting to confirm there are no upload requests.
Need just specific pages? Use Split PDF to extract them first, then convert.
When to convert PDF to JPG
- Sharing on social media — platforms like LinkedIn, X, and Instagram don't support PDF embeds. Converting slides or infographics to JPG lets you post them directly.
- Embedding in a Word or PowerPoint document — Office applications handle images far more reliably than embedded PDFs across different operating systems.
- Sending a preview without the editable file — a JPG of a contract or proposal gives the other party something to view quickly without risking accidental edits.
- Uploading to a CMS or form that only accepts images — many HR portals, tender systems, and property listing platforms require image uploads, not PDFs.
- Creating thumbnails for a document library — convert the first page of each PDF to generate preview images for a web-based document index.
- Archiving scanned documents as images — some workflows prefer flat image archives over PDF containers for long-term storage compatibility.
How it works under the hood
PDF is a vector-based format — pages are defined by drawing instructions, not pixels. Converting to JPG requires rasterising: executing those drawing instructions on a pixel grid at a chosen resolution.
keptlocal uses pdf.js, Mozilla's open-source PDF renderer originally built for Firefox. It parses the PDF structure, resolves fonts and images embedded in the file, and draws each page onto an HTML <canvas> element at the scale you choose. Once the canvas is filled, the browser's native canvas.toBlob() method encodes it as JPEG at 92% quality — a setting that balances file size and visual fidelity.
The scale factor controls output resolution. A standard A4 PDF page is 595 × 842 points (1 point = 1/72 inch). At scale 1.5 (Standard), the canvas is 893 × 1263 pixels — roughly 108 DPI. At scale 3.0 (Best), it reaches 1785 × 2526 pixels, or 216 DPI, which is comfortable for print use.
When the PDF has multiple pages, the JPG blobs are collected in memory and handed off to JSZip, which assembles a ZIP archive in-browser. The ZIP downloads as a single file — no server, no temporary storage.
Limits and what to expect
- Resolution and file size: Best quality on a dense A4 page can produce JPGs of 1–3 MB each. For a 50-page document at Best quality, expect a ZIP of 50–150 MB — allow a few minutes for rendering and compression.
- Fonts: pdf.js handles embedded fonts reliably. PDFs that subset or obfuscate fonts (common in some design tools) render correctly because pdf.js uses the embedded font data directly.
- Transparency: JPEG does not support transparency. Any transparent areas in the PDF (common in logos and watermarks) are composited onto a white background, matching the default white page colour.
- Password-protected PDFs: files that require a password to view their content cannot be rendered — unlock them in your PDF reader first.
- Very large PDFs: rendering is CPU-bound. A 200-page document at Best quality may take 30–60 seconds on a mid-range laptop. The browser tab remains responsive; a progress counter shows each page as it completes.
- Browser support: requires Canvas API and WebAssembly. Works in Chrome 90+, Firefox 90+, Safari 15+, Edge 90+.
Privacy: what happens to your PDF
Your file never leaves your device. pdf.js loads the PDF bytes into browser memory using the File API, renders each page to an off-screen canvas, and exports the resulting JPEG — all without a network request.
This distinction matters for PDFs that contain sensitive content: medical scans, legal documents, financial records, ID cards. With server-based converters you are uploading the file and trusting a third party's infrastructure. With keptlocal there is nothing to trust because the file stays local from upload to download.
Competitors including ILovePDF, Smallpdf, and Adobe Acrobat online all upload your file to process it. Their privacy pages commit to file deletion within a set window, but you cannot verify that. On keptlocal, the verification is immediate: open the Network tab and watch zero bytes leave your machine.