원클릭으로
ppt-export-pptx
将 deck_dir 中的 HTML 页面导出为可编辑的 PPTX 文件,使用 DOM 解析重建方式生成原生 PPTX 元素(文本框、图片、形状、表格等)。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
将 deck_dir 中的 HTML 页面导出为可编辑的 PPTX 文件,使用 DOM 解析重建方式生成原生 PPTX 元素(文本框、图片、形状、表格等)。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Professional data visualization using Python (matplotlib, seaborn, plotly). Create publication-quality static charts, statistical visualizations, and interactive plots. Use when generating charts/graphs/plots from data, creating infographics with data components, or producing scientific/statistical visualizations. Supports PNG/SVG (static) and HTML (interactive) export.
Generate professional PDFs from Markdown, HTML, data, or code. Reports, invoices, contracts, and documents with best practices.
Generate, edit, and read PowerPoint presentations. Create from scratch with PptxGenJS (cover, TOC, content, section divider, summary slides), edit existing PPTX via XML workflows, or extract text with markitdown. Triggers: PPT, PPTX, PowerPoint, presentation, slide, deck, slides.
当 storyboard 中存在图片或视觉资产缺口,需要为页面或槽位生成可追踪的资产计划,并优先落地本地图片文件时使用。
当需要根据 style-spec、storyboard 和 asset-plan 逐页生成 1280×720 HTML 幻灯片时使用。
当 `ppt-task-pack` 判定存在内容缺口、`task-pack.json.research_required` 为真时使用;上传报告、事实数据案例和长文档只是 `ppt-task-pack` 计算 `research_required` 的信号,不是独立入口。
| name | ppt-export-pptx |
| description | 将 deck_dir 中的 HTML 页面导出为可编辑的 PPTX 文件,使用 DOM 解析重建方式生成原生 PPTX 元素(文本框、图片、形状、表格等)。 |
将已生成的 HTML slides 导出为可编辑的 .pptx 文件。
deck_dir/pages/ 下的所有 page_*.html 转换为原生 PPTX 元素。${deck_dir}/<目录名>.pptx。review.md 或 review.json 存在且未标记为阻塞。data-layer 标记已就位。real-photo 槽位已兑现。deck_dir:必须已存在。若 pages/ 目录不存在但 deck_dir 下直接存在 page_*.html,会自动规范化到 pages/ 中。review.md 或 review.json:默认必须存在且未标记阻塞;使用 --force 可降级为警告并继续导出。review.md 或 review.json 存在。style-spec.json(可选):全局配色和字体,用于增强输出质量。storyboard.json(可选):PPT 标题,用于增强输出质量。{ success, output, pages, converted, failed, fileSize }。${deck_dir}/<目录名>.pptx。导出前默认逐项确认;使用 --force 时,阻塞项会降级为警告:
deck_dir 已存在。若 pages/ 缺失但根目录下有 page_*.html,会自动创建 pages/ 并移动文件(同时提升相对资源路径一级)。npm install + npx playwright install chromium),后续运行检测到已安装则跳过。review.md 或 review.json 存在且未标记为阻塞(--force 下仅为警告)。style-spec.json/storyboard.json 声明了背景或前景 motif recipe,页面 HTML 中最好存在对应的 data-layer="bg-motif"、data-layer="fg-motif" 与 data-motif-key 标记(缺失时按降级模式继续)。storyboard.json/asset-plan.json 显示某页仍有必需 real-photo 槽位未兑现,或 HTML 中仍保留明显图片 placeholder,默认不得继续导出(--force 下仅为警告)。通过 bash_command 执行:
node skills/ppt-export-pptx/html_to_pptx.mjs --deck-dir <deck_dir路径>
可选参数:
--output <文件名>:输出文件名,默认与 deck_dir 目录名一致(如 AI_产品发布会_20260318_154500.pptx),写入 deck_dir 下。--output-dir <目录>:输出目录,默认与 deck_dir 相同。可指定不同目录,避免写入 deck_dir。--pages-dir <目录>:HTML 页面所在目录。默认为 deck_dir/pages/。当 HTML 不在 pages/ 子目录下时使用。--force:强制导出。将 review 缺失/阻塞、标题层级异常、real-photo 未补齐等致命错误降级为警告,继续生成 PPTX。--batch:批量模式。跳过所有前置条件检查(review、motif、title、real-photo),同时跳过远程图片下载。隐含 --force。适用于批量测试场景。http/https 图片会在导出前自动下载到 deck_dir/images/ 并嵌入;支持 object-fit cover/contain)。background-image: url(...) 在非 #bg 元素上也能正确提取嵌入)。::before / ::after 的背景色/背景图提取为合成节点)。mix-blend-mode 不支持(PPTX 无对应特性)。background-size 小于元素尺寸的重复 pattern)可能渲染为单个渐变覆盖。opacity < 1 的图片)通过叠加半透明背景色矩形模拟,效果依赖于背景色匹配度。脚本会自动尝试读取以下文件以增强输出质量(非必需):
style-spec.json:全局配色和字体(用于 PPTX 默认字体设置)。storyboard.json:PPT 标题(用于 PPTX 文档标题属性)。slide 背景按以下优先级解析:
#bg 元素的 CSS background-image(图片 + 渐变叠加)。#bg 内覆盖 ≥90% 面积的 <img> 子元素(提升为 slide 背景图)。#bg 的 CSS background-color。.wrapper 的 CSS 背景(渐变或纯色)。body 的 CSS 背景(渐变或纯色)。FFFFFF。#bg 的兄弟 overlay 元素(如 #bg-image、.bg-grid)通过 flattenIRToElements 独立处理,其 background-image: url(...) 会被提取为图片元素。
deck_dir 导出成 PPTX,并提示会生成 <deck_dir>/<目录名>.pptx。下一步。review.md 或 review.json,默认不得直接进入导出;--force 可用于紧急生成。--force 可用于紧急生成。--force 除外。data-layer 标记缺失时不得继续导出;--force 除外。real-photo 槽位未兑现或仍有明显 placeholder 时不得继续导出;--force 除外。--force 的情况下跳过前置条件检查直接执行转换。