Turn any PDF page into a high-quality image — instantly
Drop in a PDF and get back sharp JPG or PNG images, one per page, ready to share, embed, or edit. No account required, no watermarks, and your file never leaves your browser.
How to convert PDF to image
- Add your PDF — click the upload area or drag and drop the file.
- Choose a page range (optional) — convert all pages, or just the ones you need.
- Pick a format — JPG works best for photos and scanned documents; PNG keeps sharp lines and text.
- Set the resolution — 150 DPI is fine for screen use; pick 300 DPI if you need print-quality output.
- Click Convert and download your images. Multiple pages come as a ZIP file.
Your PDF is processed entirely in your browser using JavaScript — it is never uploaded to a server. Unlike most online PDF tools, nothing leaves your device. Safe for confidential reports, signed contracts, or sensitive slides.
Worked example: extracting a single page as a PNG
Say you have a 12-page product brochure and you only need page 3 as a PNG to paste into a presentation.
- Input:
brochure.pdf— 12 pages, 2 MB - Settings: Page range → 3 to 3, Format → PNG, Resolution → 150 DPI
- Output:
brochure_page_3.png— crisp 1240 × 1754 px image, about 180 KB
The image is ready to insert into Google Slides, Canva, or any design tool that accepts standard image files.
How to do this in Python
If you need to automate the conversion in a script, the pdf2image library (backed by Poppler) is the most popular choice.
# pip install pdf2image
from pdf2image import convert_from_path
pages = convert_from_path('brochure.pdf', dpi=150)
for i, page in enumerate(pages, start=1):
page.save(f'page_{i}.png', 'PNG')
Set first_page and last_page arguments if you only want specific pages, e.g. convert_from_path('brochure.pdf', first_page=3, last_page=3).
How to do this in Node.js
The pdf-poppler or pdfjs-dist packages handle PDF rendering in Node. Here is a minimal example with pdfjs-dist and the canvas package:
// npm install pdfjs-dist canvas
const pdfjsLib = require('pdfjs-dist/legacy/build/pdf.js');
const { createCanvas } = require('canvas');
const fs = require('fs');
async function pdfPageToPng(pdfPath, pageNum, outPath) {
const doc = await pdfjsLib.getDocument(pdfPath).promise;
const page = await doc.getPage(pageNum);
const viewport = page.getViewport({ scale: 2.0 }); // ~150 DPI at scale 2
const canvas = createCanvas(viewport.width, viewport.height);
const ctx = canvas.getContext('2d');
await page.render({ canvasContext: ctx, viewport }).promise;
fs.writeFileSync(outPath, canvas.toBuffer('image/png'));
}
pdfPageToPng('brochure.pdf', 3, 'page_3.png');
How it works
The tool uses PDF.js — Mozilla's open-source PDF rendering engine — running entirely inside your browser. It reads each PDF page, draws it onto an HTML5 <canvas> element at the DPI you chose, then exports the canvas as a JPG or PNG file.
No server processes your file at any point. The conversion happens on your own CPU, which is why a very large PDF (100+ pages at 300 DPI) may take a moment on an older device.
For more on the PDF rendering spec, see Mozilla's PDF.js documentation and the ISO 32000-2 PDF standard.
When to use this tool — and when not to
| Situation | Good choice? | Why |
|---|---|---|
| Share a single slide or page as an image | ✅ Yes | Fast, no install needed |
| Embed a PDF diagram into a blog post or doc | ✅ Yes | JPG/PNG work everywhere |
| Make a PDF thumbnail or preview | ✅ Yes | 72–150 DPI is plenty |
| Extract and edit the text inside the PDF | ❌ No | Images are not searchable — you want a PDF text extractor or OCR tool instead |
| Convert 200+ pages at 300 DPI automatically | ⚠️ Maybe | Works, but a server-side script (pdf2image / Ghostscript) will be faster for bulk jobs |
| Preserve vector quality for professional print | ❌ No | Keep the PDF; rasterising at any DPI loses true vector sharpness |
Need to go the other way?
If you want to turn a set of images back into a PDF instead, the same tool above handles that too — just switch to the "Images to PDF" mode.
Working with structured data instead of documents? Our JSON Beautifier formats and validates JSON in one click, and the JSON Validator catches syntax errors instantly.
Bottom line: If you need a quick, private way to pull images out of a PDF — with no signup and no uploads — the converter above is the fastest path. Try it now.