exporting-decks-to-pptx

Converts HTML slide decks into native editable PowerPoint files with python-pptx.

Updated Mar 18, 2026
One-click install
npx skills add https://github.com/pgoell/pgoell-claude-tools --skill exporting-decks-to-pptx-pgoell
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: exporting-decks-to-pptx
Source: https://github.com/pgoell/pgoell-claude-tools/tree/main/plugins/deprecated/skills/exporting-decks-to-pptx
Command: npx skills add https://github.com/pgoell/pgoell-claude-tools --skill exporting-decks-to-pptx-pgoell

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires python-pptx, pillow, cairosvg, pymupdf, and includes references (resource) components.

What problem does it solve? HTML slide decks cannot be edited in PowerPoint, and screenshot-based exports produce static images instead of real text boxes and shapes. This Skill converts a deck-stage HTML presentation into a fully native, editable .pptx file with exact design-token colors, embedded images, and speaker notes carried over. Note: this Skill is deprecated and superseded by presentations:exporting-presentations-to-pptx. ## Core Features & Use Cases - Native PPTX Generation: Builds real text boxes, autoshapes, and speaker notes using python-pptx, authoring in the deck's own pixel space with a fixed EMU conversion. - Asset Preparation: Pre-renders SVGs and circle-cropped headshots to PNG with PIL and cairosvg, baking CSS opacity into alpha channels. - Render Verification Loop: Converts the pptx to PDF via LibreOffice in Docker, rasterizes pages with PyMuPDF, and iterates on layout issues, with an optional per-slide adversarial review pass. - Use Case: A user asks for an editable PowerPoint version of an existing HTML deck; the Skill reads the deck's CSS tokens, writes a per-deck generator script, and delivers a verified .pptx. ## Quick Start Export the HTML deck in my presentations folder to an editable PowerPoint file and verify the rendered slides.

Frequently Asked Questions about exporting-decks-to-pptx

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I convert an HTML slide deck to PowerPoint?

Read the deck's CSS design tokens and layout rules, then write a python-pptx generator script that authors in the deck's pixel space using 6350 EMU per pixel. Pre-render SVGs and cropped images to PNG, then verify the output by rendering to PDF with LibreOffice.

How to add speaker notes to slides with python-pptx?

Set slide.notes_slide.notes_text_frame.text for each slide, pulling notes from the HTML deck's JSON block keyed by 1-based slide number. Also set core_properties.title and core_properties.author on the document.

Does python-pptx support SVG images?

No, python-pptx cannot place SVG files directly. Rasterize them first with cairosvg at the target output width, and multiply the alpha channel to bake in CSS opacity since python-pptx cannot set picture transparency.

Why do python-pptx shapes show unwanted drop shadows?

The add_shape template carries a p:style element with effectRef idx="2" that renders as a shadow in LibreOffice and some Office themes. Remove the p:style element from the shape XML and set shape.shadow.inherit = False.

What are the limitations of HTML to PPTX conversion?

Webfonts are substituted with widely installed faces like Aptos and Consolas, and the verification renderer substitutes fonts further, so renders verify geometry and color rather than glyphs. Text height cannot be measured, so stacked layouts rely on a conservative wrap estimator.