with one click
pptx
PPT演示文稿处理:创建、编辑、读取.pptx文件。用户提到"PPT"、"幻灯片"、"演示"、"deck"、".pptx"时使用。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
PPT演示文稿处理:创建、编辑、读取.pptx文件。用户提到"PPT"、"幻灯片"、"演示"、"deck"、".pptx"时使用。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
| name | pptx |
| description | PPT演示文稿处理:创建、编辑、读取.pptx文件。用户提到"PPT"、"幻灯片"、"演示"、"deck"、".pptx"时使用。 |
| triggers | ["PPT","幻灯片","演示文稿",".pptx","pptx","presentation"] |
| license | Proprietary |
soffice) for presentation-to-PDF conversion.pdftoppm) for PDF-to-image conversion used by thumbnail/visual workflows.pdftoppm is unavailable, a Python fallback path may use pdf2image.PATH; if missing, report the dependency issue and stop (do not keep retrying).| Task | Guide |
|---|---|
| Read/analyze content | python -m markitdown presentation.pptx |
| Edit or create from template | Read editing.md |
| Create from scratch | Read pptxgenjs.md |
# 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/
Read editing.md for full details.
thumbnail.pyRead pptxgenjs.md for full details.
Use when no template or reference presentation is available.
Don't create boring slides. Plain bullets on a white background won't impress anyone. Consider ideas from this list for each slide.
Choose colors that match your topic — don't default to generic blue. Use these palettes as inspiration:
| Theme | Primary | Secondary | Accent |
|---|---|---|---|
| Midnight Executive | 1E2761 (navy) | CADCFC (ice blue) | FFFFFF (white) |
| Forest & Moss | 2C5F2D (forest) | 97BC62 (moss) | F5F5F5 (cream) |
| Coral Energy | F96167 (coral) | F9E795 (gold) | 2F3C7E (navy) |
| Warm Terracotta | B85042 (terracotta) | E7E8D1 (sand) | A7BEAE (sage) |
| Ocean Gradient | 065A82 (deep blue) | 1C7293 (teal) | 21295C (midnight) |
| Charcoal Minimal | 36454F (charcoal) | F2F2F2 (off-white) | 212121 (black) |
| Teal Trust | 028090 (teal) | 00A896 (seafoam) | 02C39A (mint) |
| Berry & Cream | 6D2E46 (berry) | A26769 (dusty rose) | ECE2D0 (cream) |
| Sage Calm | 84B59F (sage) | 69A297 (eucalyptus) | 50808E (slate) |
| Cherry Bold | 990011 (cherry) | FCF6F5 (off-white) | 2F3C7E (navy) |
Every slide needs a visual element — image, chart, icon, or shape. Text-only slides are forgettable.
Layout options:
Data display:
Visual polish:
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 Font | Body Font |
|---|---|
| Georgia | Calibri |
| Arial Black | Arial |
| Calibri | Calibri Light |
| Cambria | Calibri |
| Trebuchet MS | Calibri |
| Impact | Arial |
| Palatino | Garamond |
| Consolas | Calibri |
| Element | Size |
|---|---|
| Slide title | 36-44pt bold |
| Section header | 20-24pt bold |
| Body text | 14-16pt |
| Captions | 10-12pt muted |
margin: 0 on the text box or offset the shape to account for paddingAssume 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.
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.
⚠️ 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.
Do not declare success until you've completed at least one fix-and-verify cycle.
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
pip install "markitdown[pptx]" - text extractionpip install Pillow - thumbnail gridsnpm install -g pptxgenjs - creating from scratchsoffice) - PDF conversion (auto-configured for sandboxed environments via scripts/office/soffice.py)pdftoppm) - PDF to images# 1. 提取文本内容
python -m markitdown presentation.pptx --output presentation.md
# 2. 生成缩略图预览
python scripts/thumbnail.py presentation.pptx --output thumbnails/
# 3. 转换为PDF
python scripts/office/soffice.py --headless --convert-to pdf presentation.pptx
# 4. 生成图像用于检查
pdftoppm -jpeg -r 150 presentation.pdf slide
# 从模板创建
# 1. 分析模板结构
python scripts/thumbnail.py template.pptx
# 2. 编辑内容
# 编辑markdown文件,然后使用pptxgenjs生成
# 3. 使用pptxgenjs创建
pptxgenjs create --title "新产品发布" --slides 10 --output new_presentation.pptx
# 批量转换所有PPT为PDF
for ppt in *.pptx; do
python scripts/office/soffice.py --headless --convert-to pdf "$ppt"
done
# 批量提取文本
find . -name "*.pptx" -exec python -m markitdown {} --output {}.md \;
#!/bin/bash
# QA检查脚本
PPT_FILE="$1"
echo "=== PPT质量检查: $PPT_FILE ==="
# 1. 检查内容
echo "1. 检查内容完整性..."
python -m markitdown "$PPT_FILE" | grep -iE "xxxx|lorem|ipsum|placeholder" && echo "发现占位符内容!"
# 2. 生成缩略图
echo "2. 生成缩略图..."
python scripts/thumbnail.py "$PPT_FILE" --output /tmp/thumbnails/
# 3. 转换为PDF
echo "3. 转换为PDF..."
python scripts/office/soffice.py --headless --convert-to pdf "$PPT_FILE"
# 4. 生成幻灯片图像
PPT_PDF="${PPT_FILE%.pptx}.pdf"
echo "4. 生成幻灯片图像..."
pdftoppm -jpeg -r 150 "$PPT_PDF" /tmp/slides/slide
echo "检查完成!请查看/tmp/slides/中的图像进行视觉检查"
#!/bin/bash
# 自动化PPT处理工作流
INPUT_DIR="./raw_ppts"
OUTPUT_DIR="./processed"
REPORT_DIR="./reports"
mkdir -p "$OUTPUT_DIR" "$REPORT_DIR"
for ppt in "$INPUT_DIR"/*.pptx; do
BASENAME=$(basename "$ppt" .pptx)
echo "处理: $BASENAME"
# 提取文本
python -m markitdown "$ppt" --output "$OUTPUT_DIR/${BASENAME}.md"
# 生成缩略图
python scripts/thumbnail.py "$ppt" --output "$OUTPUT_DIR/thumbnails/${BASENAME}/"
# 转换为PDF
python scripts/office/soffice.py --headless --convert-to pdf "$ppt" --output "$OUTPUT_DIR/${BASENAME}.pdf"
# 生成报告
echo "=== $BASENAME ===" >> "$REPORT_DIR/summary.txt"
python -m markitdown "$ppt" --stats >> "$REPORT_DIR/summary.txt"
echo "" >> "$REPORT_DIR/summary.txt"
done
echo "所有文件处理完成!"
# markitdown文本提取
python -m markitdown --help
# 缩略图生成
python scripts/thumbnail.py --help
# LibreOffice转换
python scripts/office/soffice.py --help
# 检查依赖
python scripts/office/soffice.py --check-deps
# 调试模式
python -m markitdown --verbose presentation.pptx
# 清理缓存
rm -rf /tmp/soffice_*
提示: 对于复杂的PPT编辑任务,建议使用专业的PPT编辑软件(如Microsoft PowerPoint或Google Slides)进行主要编辑,然后使用本工具进行批量处理和自动化任务。
Word文档处理:创建、编辑、读取.docx文件。用户提到"Word"、"文档"、".docx"、"报告"、"信函"时使用。
使用腾讯云 API 密钥调用腾讯云各种服务,包括翻译、CVM、COS等。
图片识别与图文理解,基于 PaddleOCR-VL 模型,支持识别图片中的文字、场景、物体等信息。支持109种语言,可输出JSON或Markdown格式。
You MUST use this for gathering contexts before any work. This is a Knowledge management for AI agents. Use `brv` to store and retrieve project patterns, decisions, and architectural rules in .brv/context-tree. Uses a configured LLM provider (default: ByteRover, no API key needed) for query and curate operations.
Typed knowledge graph for structured agent memory and composable skills. Use when creating/querying entities (Person, Project, Task, Event, Document), linking related objects, enforcing constraints, planning multi-step actions as graph transformations, or when skills need to share state. Trigger on "remember", "what do I know about", "link X to Y", "show dependencies", entity CRUD, or cross-skill data access.
Transform AI agents from task-followers into proactive partners that anticipate needs and continuously improve. Now with WAL Protocol, Working Buffer, Autonomous Crons, and battle-tested patterns. Part of the Hal Stack 🦞