Pptx Auto Windows
Overview
Create .pptx decks on Windows with Python-only tooling, defaulting to python-pptx and a structured slide spec. Optionally render HTML to PDF first, then embed as full-bleed images if a renderer is available.
Workflow
- •Collect inputs Ask for:
- •Slide outline and desired layout types (title, bullets, image, two-column)
- •Theme preference and whether a template
.pptxshould be used - •Assets (images, logos) and target aspect ratio (16:9 or 4:3)
- •Whether an HTML-first workflow is required
- •Choose the build path
- •Path A (default): Build directly with
python-pptxusing a slide spec. - •Path B (optional): Generate HTML, render to PDF (if
weasyprintis installed), then place each rendered page as a full-bleed image in PPTX. Use only if the user explicitly wants HTML-first output and accepts the renderer dependency.
- •
Generate slide spec Draft a JSON/YAML spec from the outline, confirm structure, then run
scripts/pptx_from_spec.py. - •
Build the deck Run the script, inspect the output, and iterate on layout or assets.
Quick Start (Path A)
- •Create a spec (see
references/slide_spec.md). - •Run:
bash
python scripts/pptx_from_spec.py --spec specs/demo.json --out output/demo.pptx --widescreen
Optional HTML -> PDF -> PPTX (Path B)
- •Render HTML to PDF:
bash
python scripts/html_to_pdf.py --html slides/index.html --out build/slides.pdf
- •Convert PDF pages to images using a tool the user already has (Poppler, ImageMagick, etc.).
- •Insert images into PPTX as full-bleed slides using
scripts/pptx_from_spec.pywithtype: imageslides.
Scripts
- •
scripts/pptx_from_spec.py:- •Build a PPTX from a JSON/YAML spec.
- •Supports
title,bullets,image, andtwo_colslide types. - •Optional
--templateto reuse theme layouts from an existing.pptx.
- •
scripts/html_to_pdf.py:- •Render HTML to PDF with
weasyprintif installed. - •Fails with a clear install hint if the renderer is missing.
- •Render HTML to PDF with
References
- •
references/slide_spec.md: Spec format, examples, and layout notes. - •
references/dependencies.md: Minimal dependency guidance forpython-pptxand optional HTML-to-PDF rendering.