pptx

Create, edit, and analyze PowerPoint presentations programmatically via HTML conversion and OOXML manipulation.

Updated Jun 18, 2026
One-click install
npx skills add https://github.com/svpfahad/RES200 --skill pptx-svpfahad
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pptx
Source: https://github.com/svpfahad/RES200/tree/main/claude-scientific-writer-main/.claude/skills/document-skills/pptx
Command: npx skills add https://github.com/svpfahad/RES200 --skill pptx-svpfahad

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires markitdown, pptxgenjs, playwright, react-icons, sharp, libreoffice, poppler-utils, defusedxml, and includes scripts (resource) components.

What problem does it solve? Creating and editing PowerPoint presentations programmatically is error-prone and tedious, especially when precise layout, template reuse, or bulk slide manipulation is required. This Skill provides structured workflows for building .pptx files from scratch, editing existing decks at the XML level, and applying existing templates. ## Core Features & Use Cases - HTML-to-PowerPoint Creation: Convert HTML slides to .pptx with accurate positioning using the html2pptx.js library, then add charts, tables, and images via PptxGenJS. - Template-Based Generation: Analyze an existing template deck, duplicate and reorder slides with rearrange.py, and replace placeholder text using inventory.py and replace.py. - Raw OOXML Editing: Unpack, edit, validate, and repack presentation XML for speaker notes, comments, layouts, and animations. - Visual Validation: Generate thumbnail grids and convert slides to images to detect text overflow, overlap, and contrast issues. - Use Case: Given a corporate template deck, automatically produce a 10-slide quarterly report presentation with charts and consistent branding, then verify the output visually. ## Quick Start Create a new PowerPoint presentation about quarterly sales results using the pptx skill with a title slide, three content slides with charts, and a closing slide.

Frequently Asked Questions about pptx

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

FAQPage Schema
How do I create a PowerPoint presentation programmatically from HTML?

Create one HTML file per slide with fixed body dimensions (720pt x 405pt for 16:9), then use the html2pptx.js library with PptxGenJS to convert each file into a slide. Charts and tables are added to placeholder areas via the PptxGenJS API before saving with pptx.writeFile().

How do I edit an existing PowerPoint file with Python?

Unpack the .pptx into its OOXML parts with unpack.py, edit the slide XML files directly, validate changes with validate.py against the original, and repack with pack.py. This approach is required for speaker notes, comments, layouts, and animations.

Can I use an existing PowerPoint template for a new presentation?

Yes. Extract the template's text and thumbnails, build a slide inventory, then use rearrange.py to duplicate and reorder template slides. Finally, generate replacement text JSON and apply it with replace.py, which validates shapes and preserves formatting.

Why does my generated PPTX have text overflow or layout issues?

Overflow usually comes from content exceeding slide bounds or missing bottom margins. Generate a thumbnail grid with thumbnail.py to visually inspect slides, then adjust HTML margins, font sizes, or spacing and regenerate until validation passes.

What are the limitations of the HTML to PowerPoint conversion?

CSS gradients are unsupported and must be rasterized to PNG with Sharp first. Backgrounds, borders, and shadows only work on div elements, all text must be wrapped in p, h1-h6, ul, or ol tags, and only web-safe fonts like Arial or Georgia should be used.