html-ppt-skill pitch-deck 模板:YC/VC 风格融资演示的 10 页结构、设计令牌与换肤实践

原创2026-09-24 09:32:241,756 阅读
文章标签:AI 技能/插件前端

html-ppt-skill pitch-deck 模板:YC/VC 风格融资演示的 10 页结构、设计令牌与换肤实践

本文以 templates/full-decks/pitch-deck/README.md 描述的核心内容为主线——一套面向融资路演、Office Hours 和"公司近况汇报"场景的经典 10 页 YC/VC seed pitch 模板。读完本篇,你可以完整理解这套模板的 10 页叙事骨架与每一页的结构化占位、style.css 中的设计令牌体系(含品牌色一键换肤机制)、基于固定设计画布的渲染原理,以及从直接预览、脚本脚手架生成到批量导出 PNG 的完整工作流。

一、pitch-deck 是什么:一页 README 背后的模板定位

pitch-deck 是 html-ppt-skill 中 15 个 full-deck 模板之一,在 references/full-decks.md 的模板索引中被归类为"Scenario decks(通用场景模板)",索引中对它的定位是:

pitch-deck · 10 slides · White + blue→purple gradient, YC/VC vibe, big numbers, traction chart · Fundraising, startup pitch, investor meeting

其 README.md 给出了三要素定位:

  • 结构:Classic 10-slide YC/VC seed pitch——cover(封面)、problem(问题)、solution(方案)、product(产品)、market(市场)、business model(商业模式)、traction(数据进展)、team(团队)、ask(融资诉求)、thanks(致谢)。
  • 视觉:Clean white background, bold blue→purple gradient accent, oversized headlines and big numbers——干净白底、蓝→紫渐变强调色、超大标题与大号数字,README 原话是"the look investors expect when they skim 40 decks a day"(投资人一天快速浏览 40 份 deck 时期望看到的样子)。
  • 使用时机与气质:**Use when:** pitching a fundraise、office hours、或"state of the company" update;操作原则是 Swap copy, keep structure(替换文案,保留结构)。**Feel:** confident, data-forward, founder-friendly。
  • 换肤入口:**Brand color:** override --grad in style.css to re-skin(覆盖 style.css 里的 --grad 变量即可完成品牌换肤),这是后文第五节的实现依据。

与仓库中其他 full-deck(如小红书 3:4 竖版、课程模块等)不同,pitch-deck 是"整个 deck 拥有统一且强观点视觉"的典范:references/full-decks.md 明确指出 full-deck 系列用于"want a coherent, opinionated look for an entire deck"的场景,且每个模板视觉上都可被一眼识别。

二、10 页叙事骨架:index.html 逐页解析

模板入口是 templates/full-decks/pitch-deck/index.html,全文 148 行,共 10 个 <section class="slide">。每页都带 data-title 属性(供 O 键总览网格与演讲者模式显示页名)。以虚构公司"Lumen"(面向 solo founders 的一体化经营工具)为示例文案,逐页结构如下:

# 页面(data-title) 源码位置 结构与占位
1 Cover index.html#L14-L23 柔和渐变底 cover-bg + 右上大渐变光斑 cover-blob;品牌点 brand-dot + 品牌名;kicker 轮次标签("Seed round · 2026");86px 的 h1(带 data-anim="fade-up" 入场动画);lede 一句话定位;页脚 deck-footer 含创始人署名与自动页码 slide-number
2 Problem index.html#L25-L35 220px 水印页码 section-num"01" + 大写标签 num-tag"PROBLEM";62px 标题下用 grid g3 三张 card 陈述三个痛点(工具碎片化 / 每月 $480 浪费 / 每周 14 小时流失)
3 Solution index.html#L37-L50 一句话链路式 lede(开票→收款→预留税款→合同归档→看板更新),下方 5 个 pill pill-accent 胶囊列举能力域(Billing / CRM / Contracts / Taxes / Banking)
4 Product index.html#L52-L63 grid g2 四张 card card-hover(悬停上浮)按"jobs to be done"组织:Get paid / Stay legal / Sell smarter / See the business
5 Market index.html#L65-L76 grid g3 三个 metric 大数字(73M / $186B / 9.4%),.metric .n 用渐变裁切文字渲染 72px 数字,配 16px 说明文字;底部 lede 界定细分人群
6 Business Model index.html#L78-L89 grid g3 三档定价卡($29 / $79 / 0.4% rake,中间档加 card-accent 顶部强调线),底部一行 dim 注释 LTV/CAC payback
7 Traction index.html#L91-L105 纯 CSS 柱状图 traction-bar:6 根 .bar 用内联 style="height:18%"~100% 表达 6 个月 MRR($6k→$54k),柱顶 em 标金额、柱底 span 标月份;底部 dim 一行客户数/NPS/净留存
8 Team index.html#L107-L117 grid g3 三张 team-card,各含 96px 圆形渐变 avatar(首字母缩写)、姓名与背景一行
9 The Ask index.html#L119-L131 全渐变底 ask-box(白字 + 大投影):融资额标题、用途配比 lede(40% 工程 / 35% 增长 / 15% 合规 / 10% 缓冲),下方 44px 三组关键数字($4.5M / 18 mo / $3M)
10 Thanks index.html#L133-L144 居中 center tc 布局,180px 渐变裁切文字 mega("Thanks.")+ mega-sub 联系方式 + 两个收尾 pill

这套结构的可复用要点正是 README 强调的"Swap copy, keep structure":references/full-decks.md 的 Authoring notes 进一步说明——"Swap demo content, but keep the structural classes — they are what gives each template its identity"。也就是说,替换的是 Lumen 的文案与数字,保留的是 section-num、num-tag、metric、traction-bar、ask-box 这类决定模板气质的结构性类名。

另外值得注意的运行期细节:

  • 封面页码 <span class="slide-number" data-current="1" data-total="10"> 无需手写——assets/runtime.js 每次翻页会自动更新 data-current,并由 assets/base.css 的 .slide-number::before/::after 渲染成"1 / 10"。
  • 封面标题上的 data-anim="fade-up" 在每次导航到该页时都会被 runtime 重新触发(assets/runtime.js 中移除并强制重排后重新添加 anim-fade-up 类)。
  • 全模板零图表库依赖:traction 柱状图是手写 CSS(flex + 百分比高度),符合 references/full-decks.md "Charts are hand-rolled SVG (no CDN dependency)" 的通用约定。

三、视觉系统:style.css 设计令牌全解

templates/full-decks/pitch-deck/style.css 仅 41 行,全部规则都挂在 .tpl-pitch-deck 作用域下(<body class="tpl-pitch-deck">),这一前缀机制让多个 full-deck 的样式可以共存于同一页面而互不冲突。核心令牌与排版参数:

/* templates/full-decks/pitch-deck/style.css 摘要 */
.tpl-pitch-deck{
  --bg:#ffffff;              /* 干净白底 */
  --bg-soft:#f6f7fb; --surface:#ffffff; --surface-2:#f2f4fa;
  --border:rgba(20,25,60,.08); --border-strong:rgba(20,25,60,.18);
  --text-1:#0d1130; --text-2:#4a5070; --text-3:#8a90ad;  /* 三级文字色 */
  --accent:#3b5bff;          /* 品牌蓝 */
  --accent-2:#7a46ff;        /* 品牌紫 */
  --accent-3:#d94cff;        /* 品红收尾 */
  --accent-ink:#ffffff;     /* 压在 --accent 上的文字色,注释标明 5.1:1 对比度 */
  --grad:linear-gradient(135deg,#3b5bff 0%,#7a46ff 55%,#d94cff 100%); /* 换肤关键变量 */
  --grad-soft:linear-gradient(135deg,#eef1ff,#f4edff 55%,#fbedff);  /* 封面柔光底 */
  --radius:20px; --radius-lg:28px;
  --shadow:0 14px 40px rgba(20,25,60,.08),0 2px 8px rgba(20,25,60,.04);
  font-family:'Inter','Noto Sans SC',sans-serif;
}

从源码结构看,这套"投资人审美"由几个夸张的字号与渐变复用共同构成:

  • 超大标题:.h1 86px / 900 字重 / -0.035em 字距;.h2 62px / 800 字重(style.css#L16-L17);结束页 .mega 更是 180px / 900 字重并用 background-clip:text 裁切成渐变文字。
  • 大号数字:.metric .n 72px 渐变数字(style.css#L27-L29),定价卡里再内联 font-size:56px 压缩到卡片尺度。
  • 背景水印页码:.section-num 220px / 900 字重,颜色取 --surface-2(极浅灰紫)贴在右下角,.slide > *{z-index:1} 保证内容压在它之上(style.css#L39-L40)。
  • traction 柱状图:.traction-bar 固定 240px 高,.bar 用 flex:1 均分宽度、background:var(--grad) 上色,min-height:20px 保证最小值可见(style.css#L35-L38)。
  • The Ask 色块:.ask-box 整块铺 var(--grad) 并配 0 30px 70px rgba(59,91,255,.35) 蓝色投影,白字(style.css#L32-L34)。
  • 团队头像:.avatar 96px 圆形渐变底 + 32px 白色首字母(style.css#L31)。

这些变量名(--bg、--accent、--grad 等)与 assets/base.css 的 :root 默认令牌一一对应——base.css 先定义一套全局默认,模板在 .tpl-pitch-deck 作用域内按自身气质覆写,页面其余未覆写处(如卡片圆角基类 .card、页眉页脚 .deck-footer、pill 胶囊)继续复用 base.css 的布局基元(assets/base.css 的 .grid/.g2/.g3、.row、.card、.pill 等)。

四、渲染与运行原理:固定设计画布 + 零依赖运行时

pitch-deck 与所有 full-deck 一样,只引入 skill 根的四个共享资源(见 index.html#L6-L9 与结尾的 runtime 引入 index.html#L147):

<link rel="stylesheet" href="../../../assets/fonts.css">
<link rel="stylesheet" href="../../../assets/base.css">
<link rel="stylesheet" href="../../../assets/animations/animations.css">
<link rel="stylesheet" href="style.css">
...
<script src="../../../assets/runtime.js"></script>

关键机制(均可在源码中核对):

  1. 1920×1080 固定画布:assets/base.css 中 .deck 固定为 var(--deck-w,1920px) × var(--deck-h,1080px),再由 assets/runtime.js 的 initCanvasFit 按 min(视口宽/1920, 视口高/1080) 计算 --deck-scale 整体缩放——只缩放、不重排。这保证浏览器窗口、演讲者预览、总览缩略图与无头 PNG 渲染"是同一张图"。pitch-deck 未设置 data-w/data-h,即按默认 16:9 画布工作(竖版场景如 xhs-post 才会覆写为 810×1080)。
  2. 翻页与状态:assets/runtime.js 的键盘映射为 ← → / 空格 / PgUp PgDn / Home End 导航、F 全屏、S 演讲者模式(新窗口,BroadcastChannel 同步)、N 备注抽屉、O 总览网格、T 主题循环、A 当前页动画循环;URL 哈希 #/N 支持深链跳页(runtime.js#L1153-L1159),手机还支持单指横滑翻页(runtime.js#L1097-L1151)。
  3. 演讲者模式:pitch-deck 当前未写 <aside class="notes"> 逐字稿;若路演时需要看稿,可参考 references/presenter-mode.md 给各页补充 notes(runtime 从 .notes / aside.notes / .speaker-notes 选择器读取,见 assets/runtime.js#L26-L28)。
  4. 打印/导出 PDF:assets/base.css 的 @media print 块把 .deck 压平为普通文档流、每页 .slide 独占一页(page-break-after:always),隐藏页眉页脚与进度条——投给投资人的 PDF 版可直接走浏览器打印。

五、品牌换肤:覆盖 --grad 的连锁效应

README 给出的唯一一条换肤指引——"override --grad in style.css"——之所以够用,是因为模板内几乎所有强调面都引用了 var(--grad)。从 style.css 源码可以列出它的消费点:

消费点 选择器 效果
封面右上光斑 .cover-blob(style.css#L21) 560px 圆形渐变 + blur
品牌点 .brand-dot(style.css#L22) 14px 渐变圆点
渐变文字 base.css 的 .gradient-text(assets/base.css#L107)经 .metric .n 覆写(style.css#L28) 封面标题关键词、73M/$186B 等数字
traction 柱 .traction-bar .bar(style.css#L36) 6 根柱子颜色
团队头像 .avatar(style.css#L31) 圆形底
The Ask 色块 .ask-box(style.css#L32) 整块背景

因此换肤只需一行(此处仅示意对模板副本的修改方式,不要改动本仓库内文件):

/* 例:把品牌色换成公司主色 绿→青 */
.tpl-pitch-deck{
  --accent:#0aa36f; --accent-2:#0e8f9a; --accent-3:#37b3a5;
  --grad:linear-gradient(135deg,#0aa36f 0%,#0e8f9a 55%,#37b3a5 100%);
  --grad-soft:linear-gradient(135deg,#eefaf4,#eafaf8 55%,#e6f7f3);
  --accent-ink:#ffffff; /* 注意核对压在 accent 上的文字对比度,模板注释默认按 5.1:1 标注 */
}

建议同步覆盖 --accent(影响 kicker、num-tag、pill-accent、进度条等单色强调处)与 --grad-soft(封面柔光底),否则会残留默认蓝紫的中间态。这也与 assets/base.css 注释中的对比度约定一致:--accent-ink 必须选能与自身 accent 达成 WCAG AA 的白色或近黑。

六、获取与运行工作流

6.1 直接预览模板

模板是自包含的,用浏览器直接打开 templates/full-decks/pitch-deck/index.html 即可演示;O 键查看 10 页总览,#/7 哈希可直达 Traction 页。

6.2 用脚手架脚本生成自己的 deck

scripts/new-deck.sh 专为"把模板搬到任意深度且资源路径不断链"而设计(见其 头部注释):

# 在 skill 根目录下:以 pitch-deck 为模板,生成 my-company/seed-pitch/
./scripts/new-deck.sh seed-pitch examples -t pitch-deck

脚本的关键行为(均见源码):

  • 模板解析顺序(resolve_template):先按原样路径、再 deck、再 templates/full-decks/<name> 目录、再 templates/single-page/<name>.html;full-deck 会整目录复制(含 style.css 与 README.md)。
  • 资源重写(rewrite_assets):把产物中所有指向 assets/ 的 ../ 前缀重算为"产物目录 → skill 根"的相对路径,因此 deck 放在仓库内任意层级甚至仓库外都不会 404。
  • 自检(scripts/new-deck.sh#L194-L205):枚举 index.html 里全部本地 href/src/url() 引用(含常被漏掉的 style.css),逐一解析,任何断链即报错退出。
  • 成功输出会提示下一步:打开 index.html,按 T 循环主题、← → 翻页、O 总览,并可 render.sh ... all 渲染 PNG。

注意:生成物中请替换 Lumen 的示例文案(公司名、数字、人名、邮箱如 maya@lumen.app 均为占位演示内容),但保留第二节列出的结构性类名。

6.3 批量导出 PNG

scripts/render.sh 用无头 Chrome 逐页截图,利用 pitch-deck 的 #/N 深链能力逐页定位:

./scripts/render.sh templates/full-decks/pitch-deck/index.html all
# 生成 10 张 PNG(自动识别 <section class="slide"> 数量)

用法与参数(render.sh#L2-L8):render.sh <html> <a href="https://link.gitcode.com/i/9c01884af931732f38b0e97608b43fa5" target="_blank">N|all] [out-dir],all 会自动 grep 统计 slide 数;--window-size=1920,1080 与固定画布设计一致。适用前提:脚本当前硬编码了 macOS 的 Chrome 路径([render.sh#L14),在其他系统上需自行调整 CHROME 变量或等价改写。

七、与其他模板的关系与选型建议

  • 想换整体气质而非微调:pitch-deck 自带完整配色体系,一般不需要再叠加 assets/themes/ 的主题;若确要试 T 键主题循环,需在 <html> 或 <body> 上声明 data-themes="a,b,c"(assets/runtime.js#L1026-L1027)。
  • 演讲/路演需要逐字稿:优先参考 references/presenter-mode.md 为 pitch-deck 各页补 <aside class="notes">,或改用同样面向路演场景的 presenter-mode-reveal 模板(见 references/full-decks.md 的索引说明)。
  • 只要单页:templates/single-page/ 下另有 cover.html、kpi-grid.html、chart-bar.html 等 36 个单页布局可混用,但 references/full-decks.md 的建议是——需要整场统一观感时选 full-deck,而非 layout 混搭。

八、小结

pitch-deck 的价值在于把"投资人快速扫读"的阅读习惯固化成了可复用的 HTML 结构:10 页固定叙事、白底 + 蓝紫渐变 + 超大数字的强识别视觉、纯 CSS 的 traction 图表,以及"换文案不换结构、改 --grad 即换肤"的低成本定制模型。结合 skill 根的 1920×1080 固定画布与零依赖运行时(键盘导航、演讲者模式、总览、深链、打印分页),这套模板从本地预览、new-deck.sh 脚手架到 render.sh 批量出图形成完整闭环,是 html-ppt-skill 中把"融资演示"这一高频场景产品化最完整的一个 full-deck 模板。

登录后查看全文
html-ppt-skill