PDF to Image Converter: Turn PDF Pages into PNG or JPG Without Uploading Anything
Reviewed by the FreeOnline.fyi team · Updated 2026-09-14
What this tool actually does
We built PDF to Image Converter for one narrow, very common job: you have a PDF — a contract, a lecture handout, an invoice, a scanned form — and you need it as images. Not a screenshot, not a phone photo of your monitor. Real per-page files you can drop into a slide deck, a公众号 article, a product page, or an email attachment.
The flow fits on a single screen. Drag the PDF into the dashed box, pick PNG or JPG and one of four resolutions (72 / 150 / 300 / 600 DPI), press Convert. Each page is rendered in order onto a canvas, exported as an image Blob, and shown in a thumbnail grid. Click any thumbnail to download that page, or use the ZIP button to take the whole document at once as pdf-images.zip.
There is no account, no queue, and no second page to navigate to. That constraint was deliberate: the people who need this are usually in the middle of something else and want the images in under a minute.
Why “nothing is uploaded” is the whole point
Your file never leaves your machine. It is read as an ArrayBuffer and passed directly to PDF.js, which ships as a local static file with the site rather than loading from a CDN. If you open your browser's network panel while converting, you won't see a request carrying your document anywhere.
That matters because the PDFs people want rasterised are usually the ones they'd least like sitting on a stranger's server: signed agreements, payslips, medical letters, ID scans. Most free converters upload a copy, process it server-side, and retain it for a period you'd have to dig through the terms to find. Here, there's nothing to retain, because nothing was ever sent.
The same local-only approach runs across the other utilities at FreeOnline.fyi, including the Video Highlight Finder, which scans your footage in the browser for the same reason.
PNG or JPG, and which DPI actually matters
PNG is lossless, which is what you want for text, line art, diagrams, and screenshots. JPG produces much smaller files and suits photo-heavy pages; we fix quality at 0.92, a reasonable general compromise, though on sharp black text you may notice faint ringing around glyph edges when you zoom in.
DPI is the setting people get wrong most often. Internally the scale factor is simply dpi ÷ 72 applied to the page's real dimensions, which means the pixel count depends on the page size rather than a fixed number. For an A4 page that works out to roughly 595 × 842 px at 72 DPI, 1240 × 1754 px at 150 DPI, 2480 × 3508 px at 300 DPI, and 4960 × 7016 px at 600 DPI. A US Letter page lands near 2550 × 3300 px at 300 DPI — different numbers, because the tool scales the actual page, not a nominal size.
As a rule: 150 DPI for slides, web previews, and chat attachments; 300 DPI when something will be printed or zoomed into; 600 DPI only for genuinely small source content like fine print or detailed line art; 72 DPI for quick drafts. The files are named page-1.png, page-2.png and so on, which keeps multi-page exports in order.
What a real run looks like
On a 12-page scanned report at 150 DPI, the progress line ticks through “processing page 3 of 12” and finishes in a few seconds. The ZIP button appears only when the document has two or more pages, and the archive arrives as pdf-images.zip containing page-1.png through page-12.png. A 40-page contract at 300 DPI takes noticeably longer and produces a much larger archive — that's the resolution doing its job, not a stall.
Two implementation details shape the experience. Pages are rendered strictly one at a time: render, export to Blob, keep the Blob, shrink the canvas back to 1×1 to release memory, then move to the next page. Nothing renders concurrently, which is why long documents don't crash the tab halfway through. And the ZIP is assembled in the browser, so a 40-page export isn't 40 separate download prompts.
The thumbnails in the grid are previews only. Clicking one downloads the full-resolution image — the small version you see is not what you get.
Mistakes we see, and one we made ourselves
The most frequent error is defaulting to 600 DPI out of caution. Memory use scales with pixel area, so a 600 DPI render of a large-format page can exceed what a browser will allocate to a single canvas, and Safari is stricter about this than Chrome. If a page fails to render, drop to 300 DPI and run it again.
The second is expecting text to stay text. The output is a raster image: words can't be selected, searched, or read by a screen reader. If you need searchable output, that's an OCR job, and this tool deliberately doesn't do it.
The third is trusting form fields and annotations. Filled-in values and signatures may or may not appear, depending on whether the PDF stored an appearance stream for them. Open the converted images and check anything important before forwarding them to someone else. And remember you get one format per run — if half the document is photography and half is dense text, convert twice rather than compromising on either.
When a different tool is the better answer
This converter is intentionally small. There's no page-range selection (it's always every page), no rotation or cropping, no WebP output, no multi-file batch queue, and no merging back into a new PDF. Encrypted PDFs, similarly, aren't something we built a password prompt for — decrypt first, then convert. If your workflow needs those features, a desktop tool will serve you better than a browser page.
Soft limits sit around 100 MB and 200 pages. Beyond that the tool will still try, but rendering gets slow and the tab's memory becomes the real constraint. We'd rather tell you that up front than let it fail silently.
Finally, verify what you get. Check the pixel dimensions of one output image at 100% zoom, confirm small text is legible before you send a print file, and don't assume the DPI you selected matches what a downstream service expects. Everything here runs locally and predictably, but the final check is still yours.