pptx-html-fidelity-audit

Audit python-pptx exports against source HTML decks and re-export with rail-based layout discipline.

Updated May 20, 2026
One-click install
npx skills add https://github.com/Keimoshi/Silverloft --skill pptx-html-fidelity-audit-keimoshi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pptx-html-fidelity-audit
Source: https://github.com/Keimoshi/Silverloft/tree/main/open-design-port/skills/pptx-html-fidelity-audit
Command: npx skills add https://github.com/Keimoshi/Silverloft --skill pptx-html-fidelity-audit-keimoshi

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve? PPTX files generated from HTML slide decks via python-pptx silently drift from the source: content overflows into footers, italic emphasis disappears, hero slides lose vertical centering, and fonts fall back to system defaults. This Skill provides a repeatable five-step workflow to detect, diagnose, and fix these regressions. ## Core Features & Use Cases - Ground-truth extraction: Dump every shape's position, size, and per-run typography from a .pptx into JSON for comparison against the HTML source. - Severity-ranked audit table: Classify issues as critical (footer overlap, off-canvas), high (broken hierarchy), medium (italic/font loss), or low, with root-cause analysis. - Footer-rail + cursor-flow re-export: Rebuild the deck using a Cursor primitive that refuses to cross the content rail, budget-centered hero slides, and explicit italic propagation. - Geometry-based verification: Run a post-export checker that asserts rail and canvas invariants and exits nonzero on violations. - Use Case: You have deck.html and deck.pptx side by side and the PPTX shows text bleeding into the footer with missing italics. Run the audit to get a severity table, re-export with the layout discipline, and verify zero rail violations. ## Quick Start Ask the assistant to audit the exported deck.pptx against its source deck.html and re-export it with footer-rail layout discipline until verification passes.

Frequently Asked Questions about pptx-html-fidelity-audit

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

FAQPage Schema
How do I compare a PPTX file with its source HTML deck?

Extract every shape's position, size, and typography from the .pptx into JSON using python-pptx, then walk the HTML slide sections and build a severity-ranked audit table of mismatches. The extraction dump is the ground truth, not the export script's intent.

How to fix footer overlap in python-pptx exports?

Define a CONTENT_MAX_Y rail (e.g. 6.70 inches) and route all content blocks through a Cursor that raises OverflowError if any block would cross it. Pin the footer at its own FOOTER_TOP position outside the cursor flow, then verify zero violations post-export.

Why does italic text disappear when converting HTML to PPTX?

python-pptx does not automatically map HTML em or i tags to run.font.italic, so emphasis is silently lost. Detect italic spans while parsing the HTML and explicitly set italic=True, using a Latin serif face since CJK fonts have no real italic.

Does python-pptx handle CJK fonts correctly in PowerPoint?

Not by default. Runs need the a:ea typeface slot set explicitly or PowerPoint falls back to system fonts like Microsoft JhengHei, and variable fonts often fail to match weights. Set latin, ea, and cs slots per run and prefer static font families.

What are the limitations of geometry-based PPTX verification?

Geometry checks catch overflow and off-canvas shapes but cannot see rendered glyph problems like font fallback, kerning bugs, or missing weights. When positions are correct but type looks wrong, fall back to manual screenshot review and a font-layer audit.