HTML to PowerPoint Converter
First time? If
setup_complete: falseabove, run./SETUP.mdfirst, then setsetup_complete: true.
Convert HTML to PowerPoint (.pptx) with excellent Hebrew/RTL support using PptxGenJS.
Setup (One-time)
cd ~/.claude/skills/html-to-pptx && npm install
Quick Usage
Basic conversion:
node ~/.claude/skills/html-to-pptx/scripts/html-to-pptx.js input.html output.pptx
Hebrew document with RTL:
node ~/.claude/skills/html-to-pptx/scripts/html-to-pptx.js hebrew.html presentation.pptx --rtl
Convert URL to PowerPoint:
node ~/.claude/skills/html-to-pptx/scripts/html-to-pptx.js https://example.com slides.pptx
Complex HTML as images (pixel-perfect):
node ~/.claude/skills/html-to-pptx/scripts/html-to-pptx.js complex.html slides.pptx --mode=image
Conversion Modes
| Mode | Description | Best For |
|---|---|---|
text |
Parse HTML, create native PPTX elements | Simple HTML, editable text |
image |
Screenshot HTML, embed as images | Complex layouts, exact rendering |
auto |
Auto-detect best mode | Default |
Options
| Option | Description | Default |
|---|---|---|
--mode=<mode> |
text, image, auto | auto |
--rtl |
Force RTL for Hebrew/Arabic | auto-detect |
--title=<title> |
Presentation title | auto |
--author=<author> |
Author name | AVIZ |
--layout=<layout> |
LAYOUT_16x9, LAYOUT_4x3 | LAYOUT_16x9 |
--font=<font> |
Default font | Heebo (Hebrew) / Arial |
--font-size=<size> |
Font size in points | 18 |
--background=<color> |
Background color (hex) | - |
--slide-per=<selector> |
Split slides by CSS selector | - |
--wait=<ms> |
Wait for rendering (image mode) | 2000 |
Examples
Hebrew presentation:
node ~/.claude/skills/html-to-pptx/scripts/html-to-pptx.js hebrew.html slides.pptx --rtl --font=Heebo
Split by sections:
node ~/.claude/skills/html-to-pptx/scripts/html-to-pptx.js doc.html slides.pptx --slide-per=section
Custom styling:
node ~/.claude/skills/html-to-pptx/scripts/html-to-pptx.js doc.html slides.pptx --font=David --font-size=24 --background=F5F5F5
Pipe HTML:
echo "<h1>שלום עולם</h1>" | node ~/.claude/skills/html-to-pptx/scripts/html-to-pptx.js - output.pptx --rtl
Hebrew Best Practices
- Use
<html lang="he" dir="rtl">in HTML - Always add
--rtlflag - Use Hebrew-supporting fonts: Heebo, David, Noto Sans Hebrew
- For complex layouts, use
--mode=imagefor pixel-perfect results
Slide Structure
The converter auto-detects slide boundaries:
<section>elements<article>elements.slideclass<hr>elements
Or use --slide-per=".my-slide" for custom selectors.