← 返回
未分类 中文

pptx

Use this skill any time a .pptx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations;...
当涉及 .pptx 文件时(无论是作为输入、输出还是两者)使用此技能。包括:创建幻灯片、演示文稿、路演稿等;...
fslong520 fslong520 来源
未分类 clawhub v1.0.0 1 版本 98901.1 Key: 无需
★ 0
Stars
📥 90
下载
💾 0
安装
1
版本
#latest#office#pptx#presentation#slides

概述

> Important: All scripts/ paths are relative to this skill directory.

> Run with: cd {this_skill_dir} && python scripts/...

> Or use the cwd parameter of execute_shell_command.

PPTX Skill

Prerequisites

  • markitdown[pptx]: text extraction from presentations
  • Pillow: thumbnail grid generation
  • pptxgenjs (npm install -g pptxgenjs): creating presentations from scratch
  • LibreOffice (soffice): presentation-to-PDF conversion
  • pdftoppm (poppler-utils): PDF-to-image conversion for thumbnail/visual workflows
  • If pdftoppm is unavailable, a Python fallback path may use pdf2image.
  • On Windows, dependencies must be installed and available in PATH; if missing, report the dependency issue and stop (do not keep retrying).

Quick Reference

TaskGuide
-------------
Read/analyze contentpython -m markitdown presentation.pptx
Edit or create from templateRead editing.md
Create from scratchRead pptxgenjs.md

Reading Content

# Text extraction
python -m markitdown presentation.pptx

# Visual overview
python scripts/thumbnail.py presentation.pptx

# Raw XML
python scripts/office/unpack.py presentation.pptx unpacked/

Editing Workflow

Read editing.md for full details.

  1. Analyze template with thumbnail.py
  2. Unpack → manipulate slides → edit content → clean → pack

Creating from Scratch

Read pptxgenjs.md for full details.

Use when no template or reference presentation is available.


Design Ideas

Don't create boring slides. Plain bullets on a white background won't impress anyone. Consider ideas from this list for each slide.

Before Starting

  • Pick a bold, content-informed color palette: The palette should feel designed for THIS topic. If swapping your colors into a completely different presentation would still "work," you haven't made specific enough choices.
  • Dominance over equality: One color should dominate (60-70% visual weight), with 1-2 supporting tones and one sharp accent. Never give all colors equal weight.
  • Dark/light contrast: Dark backgrounds for title + conclusion slides, light for content ("sandwich" structure). Or commit to dark throughout for a premium feel.
  • Commit to a visual motif: Pick ONE distinctive element and repeat it — rounded image frames, icons in colored circles, thick single-side borders. Carry it across every slide.

Color Palettes

Choose colors that match your topic — don't default to generic blue. Use these palettes as inspiration:

ThemePrimarySecondaryAccent
-----------------------------------
Midnight Executive1E2761 (navy)CADCFC (ice blue)FFFFFF (white)
Forest & Moss2C5F2D (forest)97BC62 (moss)F5F5F5 (cream)
Coral EnergyF96167 (coral)F9E795 (gold)2F3C7E (navy)
Warm TerracottaB85042 (terracotta)E7E8D1 (sand)A7BEAE (sage)
Ocean Gradient065A82 (deep blue)1C7293 (teal)21295C (midnight)
Charcoal Minimal36454F (charcoal)F2F2F2 (off-white)212121 (black)
Teal Trust028090 (teal)00A896 (seafoam)02C39A (mint)
Berry & Cream6D2E46 (berry)A26769 (dusty rose)ECE2D0 (cream)
Sage Calm84B59F (sage)69A297 (eucalyptus)50808E (slate)
Cherry Bold990011 (cherry)FCF6F5 (off-white)2F3C7E (navy)

For Each Slide

Every slide needs a visual element — image, chart, icon, or shape. Text-only slides are forgettable.

Layout options:

  • Two-column (text left, illustration on right)
  • Icon + text rows (icon in colored circle, bold header, description below)
  • 2x2 or 2x3 grid (image on one side, grid of content blocks on other)
  • Half-bleed image (full left or right side) with content overlay

Data display:

  • Large stat callouts (big numbers 60-72pt with small labels below)
  • Comparison columns (before/after, pros/cons, side-by-side options)
  • Timeline or process flow (numbered steps, arrows)

Visual polish:

  • Icons in small colored circles next to section headers
  • Italic accent text for key stats or taglines

Typography

Choose an interesting font pairing — don't default to Arial. Pick a header font with personality and pair it with a clean body font.

Header FontBody Font
------------------------
GeorgiaCalibri
Arial BlackArial
CalibriCalibri Light
CambriaCalibri
Trebuchet MSCalibri
ImpactArial
PalatinoGaramond
ConsolasCalibri
ElementSize
---------------
Slide title36-44pt bold
Section header20-24pt bold
Body text14-16pt
Captions10-12pt muted

Spacing

  • 0.5" minimum margins
  • 0.3-0.5" between content blocks
  • Leave breathing room—don't fill every inch

Content-to-Layout Mapping

Content TypeRecommended LayoutWhy
---------
Executive summary / thesisFull-slide title + subtitle (no body)Punchy opener that sets the tone
3-5 key pointsIcon + text rows (icon circles, bold header, description)Scannable, visual rhythm
6+ key points2-column grid (icon + text blocks)Space-efficient without making each item tiny
Time series dataChart slide (line/bar, large numbers callout)Visual trend recognition
Comparison (A vs B)Split column (left vs right) or before/after layoutSide-by-side highlights differences
Process flowNumbered steps with arrows betweenDirectional flow is intuitive
Data-heavy slideMinimal header + one large chart + 1-2 stat calloutsChart is the hero, not bullets
Team / people introPhoto + name + role card (2x2 or 3 grid)Personal connection via faces
Quote / testimonialCentered pull-quote format (large italic, subtle background)Emphasis through whitespace
Call to action / closingBold statement + next step (full-slide impact)Reader remembers the last thing they see

Avoid (Common Mistakes)

  • Don't repeat the same layout — vary columns, cards, and callouts across slides
  • Don't center body text — left-align paragraphs and lists; center only titles
  • Don't skimp on size contrast — titles need 36pt+ to stand out from 14-16pt body
  • Don't default to blue — pick colors that reflect the specific topic
  • Don't mix spacing randomly — choose 0.3" or 0.5" gaps and use consistently
  • Don't style one slide and leave the rest plain — commit fully or keep it simple throughout
  • Don't create text-only slides — add images, icons, charts, or visual elements; avoid plain title + bullets
  • Don't forget text box padding — when aligning lines or shapes with text edges, set margin: 0 on the text box or offset the shape to account for padding
  • Don't use low-contrast elements — icons AND text need strong contrast against the background; avoid light text on light backgrounds or dark text on dark backgrounds
  • NEVER use accent lines under titles — these are a hallmark of AI-generated slides; use whitespace or background color instead

QA (Required)

Assume there are problems. Your job is to find them.

Your first render is almost never correct. Approach QA as a bug hunt, not a confirmation step. If you found zero issues on first inspection, you weren't looking hard enough.

Content QA

python -m markitdown output.pptx

Check for missing content, typos, wrong order.

When using templates, check for leftover placeholder text:

python -m markitdown output.pptx | grep -iE "xxxx|lorem|ipsum|this.*(page|slide).*layout"

If grep returns results, fix them before declaring success.

Visual QA

⚠️ USE SUBAGENTS — even for 2-3 slides. You've been staring at the code and will see what you expect, not what's there. Subagents have fresh eyes.

Convert slides to images (see Converting to Images), then use this prompt:

Visually inspect these slides. Assume there are issues — find them.

Look for:
- Overlapping elements (text through shapes, lines through words, stacked elements)
- Text overflow or cut off at edges/box boundaries
- Decorative lines positioned for single-line text but title wrapped to two lines
- Source citations or footers colliding with content above
- Elements too close (< 0.3" gaps) or cards/sections nearly touching
- Uneven gaps (large empty area in one place, cramped in another)
- Insufficient margin from slide edges (< 0.5")
- Columns or similar elements not aligned consistently
- Low-contrast text (e.g., light gray text on cream-colored background)
- Low-contrast icons (e.g., dark icons on dark backgrounds without a contrasting circle)
- Text boxes too narrow causing excessive wrapping
- Leftover placeholder content

For each slide, list issues or areas of concern, even if minor.

Read and analyze these images:
1. /path/to/slide-01.jpg (Expected: [brief description])
2. /path/to/slide-02.jpg (Expected: [brief description])

Report ALL issues found, including minor ones.

Pre-Delivery Checklist

  • [ ] All slides have a visual element (image, chart, icon, or shape) — no text-only slides
  • [ ] Logos appear on correct brand-consistent slides
  • [ ] Source citations present on data charts
  • [ ] No placeholder text (Lorem ipsum, "Click to add title", etc.)
  • [ ] Slide numbers present (if >5 slides)
  • [ ] Consistent color palette throughout — no stray default-blue slides
  • [ ] Typography consistent (same header/body font pair on every slide)
  • [ ] No accent lines under titles
  • [ ] Text boxes have appropriate padding (margin: 0 or sufficient clearance)
  • [ ] High contrast on all text and icons against backgrounds

Verification Loop

  1. Generate slides → Convert to images → Inspect
  2. List issues found (if none found, look again more critically)
  3. Fix issues
  4. Re-verify affected slides — one fix often creates another problem
  5. Repeat until a full pass reveals no new issues

Do not declare success until you've completed at least one fix-and-verify cycle.


Converting to Images

Convert presentations to individual slide images for visual inspection:

python scripts/office/soffice.py --headless --convert-to pdf output.pptx
pdftoppm -jpeg -r 150 output.pdf slide

This creates slide-01.jpg, slide-02.jpg, etc.

To re-render specific slides after fixes:

pdftoppm -jpeg -r 150 -f N -l N output.pdf slide-fixed

Common Pitfalls

PitfallCorrect Approach
--------------------------
Text cut off at edgeAdd margin: 0 to text box; leave 0.5" slide margin
Text overflowing shape boundaryIncrease text box height or reduce font by 2pt
Title accent line (AI hallmark)Use whitespace or background color instead of decorative lines
Low-contrast text/iconsAlways check foreground vs background — use contrasting circle for icons on dark
One-off layout repeated across all slidesVary columns, cards, and callouts — monotony loses audience
Default blue color schemePick a topic-specific palette before starting
Centered body textLeft-align paragraphs and lists; center only titles
Placeholder remnantsAlways `grep -iE "xxxxloremipsum"` before declaring done
Mixed font pairingsPick one header/body pair and apply consistently across all slides
Forgetting pptxgenjs.md layout prop overridesSee pptxgenjs.mdx, y, w, h override auto-layout

Known Issues

IssueWorkaround / Note
------
pptxgenjs no visual previewMust convert to images via soffice → pdftoppm. No runtime render.
No Unicode emoji support in pptxgenjsUse image of the emoji, or a simple shape/icon instead.
Text box auto-resize differs from PowerPointSet explicit h and margin: 0 on pptxgenjs text objects.
Chart data must exist before pptxgenjs chart creationCannot add data series after chart is instantiated — plan all series upfront.
Template editing requires XML knowledgeSee editing.md — unpack, manipulate slide XML, repack pipeline.
Image aspect ratio distortionAlways specify both w and h matching original aspect ratio; pptxgenjs does not auto-constrain.

版本历史

共 1 个版本

  • v1.0.0 当前
    2026-06-09 19:06 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

公众号写手

fslong520
专业公众号内容创作专家,精通公众号、小红书、知乎等多平台写作。基于传播学和新媒体运营,产出高传播力、优质内容;采用去AI痕迹技术,确保文字自然流畅、富有感染力。
★ 2 📥 681

搬题姬

fslong520
从 OJ 平台搬运题目(含AtCoder/Codeforces等),生成标准化题目文件包;也可根据用户提供的题目仅生成测试数据。用户说"搬运""搬题""搬道题""导入题目"均适用
★ 5 📥 1,114

雀漫

fslong520
将长篇小说转换为 Seedance 2.0 平台的 15 秒动态漫画分镜脚本。 包含剧情容量分析、旁白与台词严格区分、角色卡(纯文本)、6-8 个分镜头、 微动作设计、镜头运动、配音音效。专为 AI 视频生成优化,无 markdown 格式
★ 2 📥 1,117