Text to PPT

👤 rendylong 📦 v1.0.0 ⭐ 4.2 ⬇️ 2.4K 下載
📄 辦公效率 免費

📖 技能介紹


name: text-to-ppt description: Convert any text input (research reports, summaries, proposals, plans, etc.) into a beautiful HTML-based presentation. Use when the user asks to create a PPT, slides, presentation, deck, or convert text/documents into slides. Also triggers on phrases like "做成PPT", "生成幻燈片", "做個簡報", "轉成slides", "create presentation", "make slides", "text to presentation". Supports data visualization with Chart.js, Font Awesome icons, and modern design themes.

7w4.net小蔥技能。


Text-to-PPT — 文本轉 HTML 簡報

Convert any text input into a visually stunning, single-file HTML presentation.

CRITICAL: Two-Phase Generation

ALWAYS use the two-phase approach. NEVER generate the full HTML in one shot.

Phase 1: Plan (fast, single call)

Read the input text, then produce a slide-by-slide outline in JSON format:

{
  "title": "Presentation Title",
  "language": "zh-CN",
  "density": "detailed",
  "theme": "dark",
  "slides": [
    {
      "number": 1,
      "type": "title",
      "heading": "Main Title",
      "content": "Subtitle or tagline",
      "layout": "centered",
      "notes": "Visual: large title with accent underline"
    },
    {
      "number": 2,
      "type": "content",
      "heading": "Section Title",
      "points": ["Point 1", "Point 2", "Point 3"],
      "layout": "bullets",
      "hasData": false,
      "notes": "Use numbered badges for each point"
    },
    {
      "number": 3,
      "type": "chart",
      "heading": "Key Metrics",
      "chartType": "bar",
      "chartData": {
        "labels": ["A", "B", "C"],
        "datasets": [{"label": "Sales", "data": [100, 200, 150]}]
      },
      "points": ["Insight 1", "Insight 2"],
      "layout": "split",
      "hasData": true,
      "notes": "Left: chart, Right: insights as stat cards"
    }
  ]
}

Rules for Phase 1: - Output ONLY the JSON plan. No HTML. No explanation. - Identify data points → mark hasData: true and provide chartType + chartData - Choose layout: centered, bullets, split, grid, timeline, cards, fullchart, quote - Target 8-15 slides. Never exceed 20. - This should take <10 seconds.

Phase 2: Generate (parallel, page-by-page)

Read references/design-system.md — this is where the full design spec lives.

Then generate HTML for each slide independently. Each slide is a self-contained <div class="slide"> block.

For each slide, the agent should: 1. Take ONE slide from the plan (by number) 2. Read only the design system reference if not already loaded 3. Generate ONLY that one slide's HTML <div class="slide">...</div> 4. No <html>, no <head>, no <body> — just the slide div

BATCHING: Generate slides in parallel using sub-agents. Spawn up to 5 sub-agents simultaneously, each generating 1-2 slides.

Phase 3: Assemble

After all slides are generated: 1. Read the shell template from references/shell-template.html 2. Insert all slide divs into the shell 3. Ensure chart canvas IDs are unique across all slides 4. Save to Obsidian vault: ~/Documents/longhai/Longhai/ 5. Tell user the file path

Execution Strategy

When running as the main agent:

  1. Phase 1 yourself (fast, just JSON)
  2. Write the plan to a temp file
  3. Spawn sub-agents for Phase 2 (parallel slide generation)
  4. Collect results and assemble in Phase 3

Sub-agent task format (for Phase 2):

Generate HTML for slide {N} of a presentation.

SLIDE PLAN:
{JSON for this specific slide}

DESIGN SYSTEM: Read references/design-system.md for theme colors, components, and rules.

OUTPUT: Return ONLY a single <div class="slide" style="background-color: #0f172a;">...</div> block.
No <html>, <head>, or <body> tags. Use inline styles. Include <script> for Chart.js if this slide has charts.
Use unique canvas ID: chart-slide{N}-{random}.

Input Sources

  • Directly pasted text
  • A file path — read it first with read
  • A URL — fetch it first with web_fetch
  • An Obsidian note path — read it first

Output

  • Single self-contained HTML file
  • File naming: {topic-slug}.presentation.html
  • Default save location: ~/Documents/longhai/Longhai/
  • Tell the user the file path

Theme Options

Theme Background Text Cards Accent
dark (default) slate-900 slate-50 slate-800 blue-500/amber-500
light slate-50 slate-900 white blue-600/amber-600
tech gray-950 emerald-50 gray-900 cyan-500/violet-500
warm stone-900 amber-50 stone-800 orange-500/rose-500

User can specify a theme. Default: dark.

🤖 AI 評測

這個 Skill 質量不錯,能將文本快速轉換成精美的 HTML 幻燈片。文件清晰易懂,操作流程分步驟說明,生成的簡報支援圖表、資料視覺化等多種樣式,還有多種主題可選。不過缺少實際效果示例,複雜的錯誤處理說明也不夠充分,普通使用者遇到問題可能需要更多幫助。

📊 多維度評分

適應性4.3
規範性4
有效性4.4
可靠性3.9
可信度4.5

📁 包含檔案 (4 個)

📄 SKILL.md 4.6 KB
📄 _meta.json 130 B
📄 references/design-system.md 3.8 KB
📄 references/shell-template.html 4 KB