← ClaudeAtlas

pptx-cnlisted

生成 .pptx(pptxgenjs)——Node 实现、中文优先、研究汇报向。内置 Node 运行法 / 共享依赖 NODE_PATH 技巧、中文字体坑、navy 学术配色、结果表(Rel/Gen/Loc/Avg 最佳值标红)模板、图表脚手架、以及「仿既有 PPT 直接拷其生成器设计系统」配方。触发:做 PPT / 幻灯片 / deck / presentation / .pptx,尤其涉及中文、实验结果表、指标、中英混排,或要匹配某套既有 PPT 风格。
ssssliug/claude-skill-pptx-cn · ★ 1 · Data & Documents · score 72
Install: claude install-skill ssssliug/claude-skill-pptx-cn
# PPT 文档生成(Node · 中文 · 研究向) 面向 Node-only 环境(**无 Python / LibreOffice / pandoc**,在 Windows + Node v24 上验证过;macOS / Linux 同理)。`.pptx` 用 [`pptxgenjs`](https://github.com/gitbrent/PptxGenJS)。**只做创建**——转 PDF / 缩略图 / schema 校验等 QA 本机跑不了(要视觉预览需另装 LibreOffice)。 官方 `~/.claude/skills/pptx`(默认停用,文件仍在)有更全的踩坑表与 Python 脚本(校验 / 缩略图 / 模板编辑 / tracked changes / comments)。遇到复杂或排错场景,可手动 `cat ~/.claude/skills/pptx/SKILL.md` 当字典查——它不自动加载,但内容在。配套 Word 技能见 `docx-cn`。 ## 运行(两种方式任选) **方式 A · 本仓库装依赖(推荐,跨平台)**:仓库根 `package.json` 已列好依赖,`npm install` 后直接跑: ```bash npm install node templates/results_pptx.js out.pptx # 输出路径可中文 ``` **方式 B · 共享依赖 + NODE_PATH(Windows / Git Bash 特有技巧)**:把所有 skill 的 node_modules 集中放一处(如 `~/.claude/skills-deps/node_modules`,含 `pptxgenjs` / `sharp` / `react-icons` / `react` / `react-dom`),脚本里直接 `require()`、不必每个仓库各装一份。node 是原生 Windows 程序、**不认 MSYS 的 `~` / `/tmp` 路径**,必须 cygpath + NODE_PATH: ```bash NODE_PATH=$(cygpath -w ~/.claude/skills-deps/node_modules) node 脚本.js ``` 输出用完整 Windows 路径 `C:/.../名.pptx`,中文路径 OK。改 / 重生成同名文件前确认没被 Office 打���(**EBUSY**)。 --- ## PPT (pptxgenjs) ### 画布 `pres.layout = 'LAYOUT_WIDE'` → 13.33″×7.5″。默认 `LAYOUT_16x9` 只有 10″ 宽,超出坐标的内容写进去了但看不见。 ### 中文字体(最高频翻车点,务必显式指定) pptxgenjs 默认 Calibri,**渲染中文会掉字 / 变方块 / 行距崩**。每处文字都带 `fontFace`: - 正文 / 标题:`fontFace:'Microsoft YaHei'`(微软雅黑,英文也正常,整段统一最省事) - 代码:`fontFace:'Consolas'` - 中英混排想给数字 / 术语换字体 → 单独包一个 `{ text, options }` run;否则整段统一 YaHei。 - 中文段落用全角标点(避免半角逗号配中文字体的间距问题)。 ### 颜色(高频坑) **不带 `#`、必须 6 位 hex**:`c