mcpField
H
html-to-pptx

html-to-pptx

github.com/nlj626文档处理1197 次安装28 周前更新
代码仓库

关于 html-to-pptx

将 HTML 演示文稿转换为 PPTX 的技能,通过逐页截图并组装成幻灯片,适合需要以 PPTX 分享 HTML 演示文稿的场景;输出中的文字不可编辑。

主要功能

  1. 01使用 headless Chrome 渲染幻灯片
  2. 02通过 pptxgenjs 组装图片
  3. 03自动检测或指定页数
  4. 04设置宽高比和图片质量

适用场景

  1. 01将 HTML 演示文稿导出为 PPTX
  2. 02向仅接受 PPTX 的对象分享 HTML 演示文稿

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/nlj626/html-to-pptx --skill html-to-pptx

安装后在 Claude Code 中输入/html-to-pptx确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

LICENSE
.gitignore
README.md
scripts/
html-to-pptx.sh
render.sh
html-to-pptx.cjs

详细介绍

来自项目 README

html-to-pptx — HTML 演示文稿转 PPTX

将 html-ppt 生成的 HTML 演示文稿一键转换为 .pptx 文件。

Agent 使用指南

当用户说"导出 PPTX"、"转成 PPT"、"HTML 变 PPTX"或类似的话时:

  1. 确认 HTML 文件路径 — 通常在 ~/.claude/skills/html-ppt/examples/<deck-name>/index.html,或用户指定的路径
  2. 运行转换命令:
    bash ~/.claude/skills/html-to-pptx/scripts/html-to-pptx.sh <html文件路径>
    
  3. 报告结果 — 告诉用户 PPTX 文件的路径和大小
  4. 可选参数:
    • --ratio 4:3 — 指定宽高比(支持 16:9、4:3、3:4、1:1)
    • -- --quality 80 — 指定 JPEG 质量(1-100,默认 92)
    • -- --quality png — 强制 PNG 格式(无损但文件较大)

工作原理

  1. headless Chrome 截图:逐页将 HTML 渲染为 PNG 图片(支持 #/N 深度链接)
  2. pptxgenjs 组装:将图片按顺序嵌入 PPTX,每张铺满整页

因为是截图方式,PPTX 会 100% 还原 HTML 的视觉效果,包括字体、颜色、布局、渐变等。

命令参考

# 自动检测页数
bash scripts/html-to-pptx.sh /path/to/deck/index.html

# 指定页数
bash scripts/html-to-pptx.sh /path/to/deck/index.html 8

# 4:3 宽高比
bash scripts/html-to-pptx.sh /path/to/deck/index.html all --ratio 4:3

# 指定 JPEG 质量(更小文件)
bash scripts/html-to-pptx.sh /path/to/deck/index.html all -- --quality 80

# 无损 PNG 格式
bash scripts/html-to-pptx.sh /path/to/deck/index.html all -- --quality png

输出文件与 HTML 同目录,文件名相同但扩展名为 .pptx。

依赖

  • Google Chrome:macOS 默认路径 /Applications/Google Chrome.app
  • pptxgenjs:npm install -g pptxgenjs

注意事项

  • 输出的 PPTX 中每页是一张图片,不可编辑文字(但视觉效果完美还原)
  • 如果需要可编辑文字的 PPTX,应使用 pptx skill 从头创建
  • 适合场景:需要将 html-ppt 作品分享给只接受 PPTX 格式的同事/客户

评论

支持 Markdown