Clioos › Guides › PDF to PowerPoint
How to Convert PDF to PowerPoint
There is no free tool that turns a PDF into an editable PowerPoint deck — the text in a PDF has no slide structure to recover. The honest free method is simpler: render each page to an image, then put one image on each slide. The deck looks exactly like the PDF, but the text is a picture, not editable text. Here is the exact flow, tested.
At a glance
- Render each PDF page to a PNG with pdftoppm (part of poppler, free and open source).
- Build the deck with python-pptx: one full-slide image per page, 16:9 slides.
- Tested 6 November 2026: a 3-page PDF became a 3-slide .pptx of 76,841 bytes.
- The slides are images — text is not selectable, searchable, or editable.
- PDF Probe does not convert PDF to PowerPoint. It converts PDF tables to Excel — a different job.
Steps
- Install the tools:
pip install python-pptxfor the deck builder, and poppler for pdftoppm — on Linux it is usually already there (pdftoppm -v); on macOSbrew install poppler. - Render the pages:
pdftoppm -png -r 150 input.pdf page— page 1 becomes page-1.png, page 2 becomes page-2.png, and so on. Use 300 instead of 150 for print-quality slides (the file gets bigger). - Build the deck with a short script (see the section below): a blank 16:9 presentation, one full-slide image per page, in order.
- Save as .pptx and open it. On the test file, a 3-page PDF produced a 3-slide deck of 76,841 bytes.
- Check every slide: a page with a white background and dark text looks right at 150 DPI; a page with tiny print may need 300 DPI. Re-render only the weak pages if you have to.
Worked example (tested 6 November 2026)
I tested this with a 3-page A4 PDF made with ReportLab (2,670 bytes: a heading and one line of body text per page). pdftoppm -png -r 150 produced 3 PNGs of 24,739, 24,970 and 25,123 bytes. The python-pptx script below placed one image per slide in a 16:9 deck (13.33 by 7.5 inches) and saved a 3-slide .pptx of 76,841 bytes, which LibreOffice Impress converted back to a 3-page PDF without errors.
from pptx import Presentation
from pptx.util import Inches
prs = Presentation()
prs.slide_width = Inches(13.33)
prs.slide_height = Inches(7.5)
blank = prs.slide_layouts[6]
for png in ['page-1.png', 'page-2.png', 'page-3.png']:
slide = prs.slides.add_slide(blank)
slide.shapes.add_picture(png, 0, 0,
width=prs.slide_width, height=prs.slide_height)
prs.save('output.pptx')
What it can't do (tested)
- Editable text: the slides are images. Nothing is selectable, searchable, or editable — if you need editable text, extract it with
pdftotextand rebuild the slides by hand. - File size: the .pptx is bigger than the PDF. The test PDF was 2,670 bytes; the deck was 76,841 bytes, because every page is stored as a full image.
- Scanned pages: a scanned page converts fine, but the slide can only be as sharp as the scan. Rendering at 300 DPI does not add detail that was never in the scan.
- Animations and transitions: none. The deck is one static image per slide.
Free alternatives, honestly compared
- LibreOffice Impress: opening a PDF in Impress imports each page as editable drawing objects — text comes back as text boxes, but fonts and spacing often shift. Fine for a quick edit, unreliable for a faithful deck.
- Online PDF-to-PPT converters: they upload your file to someone else's server, and the free tier usually caps pages or adds a watermark. The method above keeps the file on your machine.
- Google Slides: no direct PDF import. The same image-per-slide trick works: upload the PNGs to a blank deck.
PDF Probe does not convert PDF to PowerPoint. It converts PDF tables and bank statements to Excel — if that is the job, see How to Convert PDF to Excel.
Frequently asked questions
Can I edit the text after converting?
No. Each slide is a picture of the PDF page. To get editable text, run pdftotext on the PDF and type or paste the text into new slides yourself.
Is it really free?
Yes. pdftoppm (poppler) and python-pptx are both free and open source, and the whole conversion runs on your own computer — nothing is uploaded.
What DPI should I render at?
150 DPI is sharp enough for screen presentations and keeps the file small. Use 300 DPI if the slides will be printed or projected on a very large screen; the .pptx roughly quadruples in size.
Does it work on scanned PDFs?
Yes. A scanned page is already an image, so it renders like any other page. The slide will be exactly as sharp — or as blurry — as the original scan.
Related guides: How to Convert PDF to Word · How to Convert PDF to JPG · How to Convert PDF to PNG · How to Split a PDF · All guides · Tool: PDF Probe