PPT Layout Matcher

Intelligent PPT layout matching system based on a 45-page design layout library (16:9). Analyzes input content and automatically recommends the best slide layout from 10 categories. Trigger when user says: "做PPT", "创建PPT", "生成PPT", "版式匹配", "选版式", "PPT排版", or provides content that needs to be turned into presentation slides. Core capability: analyze content → match layout → create slides with python-pptx.

Audits

Pass

Install

openclaw skills install ppt-layout-matcher

PPT Layout Matcher

Intelligent layout matching for PowerPoint presentations based on a 45-page professional design layout library.

When to Use

  • User wants to create a PPT from content
  • User asks "which layout should I use for this content?"
  • User provides bullet points / data / flow descriptions and wants them turned into slides
  • User mentions "PPT", "presentation", "slides", "版式", "排版"

Workflow

Step 1: Analyze Content Structure

Extract key features from user input:

  • Number of items (3 key metrics? 4 steps? 2 comparisons?)
  • Content nature (data/metrics, process/steps, comparison, gallery, list)
  • Presence of numbers/charts/images
  • Timeline/step indicators

Step 2: Run Matching Algorithm

Execute the bundled script to get layout recommendations:

python3 ppt_layout_matcher.py

Or use the Python API:

from ppt_layout_matcher import recommend_layout
results = recommend_layout("user content here", top_k=3)
for template, score, analysis in results:
    print(f"{template.name} (Slide {template.slide_ref}) - Score: {score}")

Step 3: Present Top 3 to User

Show:

  • Layout name and reference slide number
  • Match score
  • Structure description
  • Why this layout was recommended

Let the user confirm before creating.

Step 4: Create PPT with python-pptx

Once confirmed, create the slide:

  • 16:9 dimensions (13.33" × 7.50")
  • Dark theme (deep blue/gray background)
  • White text, accent colors for data highlights
  • Follow the reference layout structure from references/layout_templates.md

Step 5: QA

Verify with markitdown:

python -m markitdown output.pptx | head -100

Layout Categories (Quick Reference)

CategoryCountUse Case
A-Cover2Report cover, proposal front page
B-Divider2Section transitions
C-Data Display9Metrics, charts, data highlights
D-Process/Steps6STEP flows, development stages
E-Comparison5A/B comparison, multi-solution, SWOT
F-Grid/Cards82×2, 3×2, 4×N card grids
G-Gallery1Image gallery, timeline
H-List/Points4Numbered lists, text+image lists
I-Infographic1One Pager overview
J-Special7Radial, wraparound, mixed layouts

Design Conventions

  • Title bar: top 0.3-1.0" area
  • Content area: 1.2"-7.0"
  • Footer: 6.5"-7.2"
  • Margins: ≥0.5" on all sides
  • Heading: 20-30pt Bold, Body: 10-14pt, Big Numbers: 36-60pt Bold
  • Dark background, white text, accent colors for highlights

References

Full layout library documentation: references/layout_templates.md