用途:创建、编辑与分析 .pptx 演示文稿。.pptx 本质是包含 XML 与资源的 ZIP 压缩包,可按任务选择不同工具与流程。
主要能力:读取分析时可先用 python -m markitdown path-to-file.pptx 提取文本转 Markdown;如需批注、演讲者备注、版式、动画、设计元素或复杂格式,则解包读取原始 XML。解包命令:python ooxml/scripts/unpack.py <office_file> <output_dir>(脚本相对项目根位于 skills/pptx/ooxml/scripts/unpack.py,找不到可用 find . -name "unpack.py" 定位)。
关键结构:ppt/presentation.xml 主元数据与幻灯片引用;ppt/slides/slide{N}.xml 单页内容;ppt/notesSlides/ 演讲者备注;ppt/comments/modernComment_*.xml 批注;ppt/slideLayouts/、ppt/slideMasters/、ppt/theme/、ppt/media/ 分别对应版式、母版、主题样式与媒体。提取字体与配色时读 theme1.xml 的 <a:clrScheme>、<a:fontScheme>,或在各 XML 中检索 <a:rPr>、<a:solidFill>、<a:srgbClr>。
使用方式:从零新建走 html2pptx 流程,先完整阅读 html2pptx.md,为每页建 HTML(如 720pt×405pt),用 <p>、<h1>-<h6>、<ul>、<ol> 组织文字,占位区用 class="placeholder",渐变与图标先用 Sharp 栅格化为 PNG,再用 html2pptx.js 转换并用 PptxGenJS 补图表表格,最后 pptx.writeFile() 保存并用缩略图校验排版。
套用模板:先 markitdown 提取文本、scripts/thumbnail.py 生成缩略图、生成 template-inventory.md(幻灯片 0 起始索引),再写 outline.md 与 template_mapping,用 python scripts/rearrange.py template.pptx working.pptx 0,34,34,50,52 复制、重排、删除幻灯片,随后用 python scripts/inventory.py working.pptx text-inventory.json 提取全部文本再填充。
编辑现有文件:完整阅读 ooxml.md 后解包、改 XML,每次修改后用 python ooxml/scripts/validate.py <dir> --original <file> 校验,最后 python ooxml/scripts/pack.py <input_directory> <office_file> 打包。
适用场景:需要程序化生成演示、复刻已有模板风格或批量修改幻灯片内容。
限制:需依赖上述脚本与库;视觉校验需人工查看缩略图;设计需遵守其字体与配色约定。其他收费、平台等信息暂未提供。