用途:处理 .pptx 演示文稿,包括创建新演示、修改现有文件和分析内容。.pptx 本质是包含 XML 与资源的 ZIP 包,可读取和编辑。
主要能力: 读取与分析:用 python -m markitdown path-to-file.pptx 提取文本为 Markdown;对批注、演讲者备注、版式、动画、设计元素和复杂格式,需解包读取原始 XML,命令为 python ooxml/scripts/unpack.py <office_file> <output_dir>。关键结构包括 ppt/presentation.xml、ppt/slides/slide{N}.xml、ppt/notesSlides/、ppt/comments/、ppt/slideLayouts/、ppt/slideMasters/、ppt/theme/、ppt/media/。分析示例设计的字体与颜色时,读取 ppt/theme/theme1.xml 的 clrScheme 与 fontScheme,并在 slide1.xml 检查字体与颜色。
从零创建:使用 html2pptx 工作流,将 HTML 幻灯片转换为 PowerPoint 并精确定位。先完整阅读 html2pptx.md,为每页创建合适尺寸(如 16:9 的 720pt×405pt)的 HTML,文本用 p、h1-h6、ul、ol,占位区用 class="placeholder",渐变与图标先用 Sharp 栅格化为 PNG。图表或表格幻灯片推荐整页布局或两栏布局,勿在单栏中纵向堆叠。随后用 html2pptx.js 转换、以 PptxGenJS API 添加图表表格,用 pptx.writeFile() 保存。最后生成缩略图检查文字截断、重叠、位置与对比度问题,命令为 python scripts/thumbnail.py output.pptx workspace/thumbnails --cols 4,发现问题则调整并重新生成。
基于模板创建:先提取模板文本并生成缩略图,建立 template-inventory.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 提取全部文本与形状属性后进行内容替换。
编辑现有演示:先用 python ooxml/scripts/unpack.py 解包,编辑 ppt/slides/slide{N}.xml 等文件,每次编辑后立即用 python ooxml/scripts/validate.py <dir> --original <file> 校验,最后用 python ooxml/scripts/pack.py <input_directory> <office_file> 打包。
限制:需具备 Python 与相关脚本环境;具体安装与依赖信息暂未提供。创建时要求使用网络安全字体并保证对比度与一致性。分类:办公与效率。