← 返回博客

Slidev:主题、示例与导出 PowerPoint 的方法

Slidev 是一款开源、面向开发者的演示工具,在 GitHub 上拥有 47.6k 颗星——你用 Markdown 撰写幻灯片、嵌入 Vue 组件,并直接在浏览器中演示。这是一份实话实说的指南:主题和示例是怎么运作的,PDF 与 PowerPoint 导出的真实表现,它与 Marp、reveal.js 相比如何,以及 Agent-Native Design Workspace 在其中的位置。

Slidev:主题、示例与导出 PowerPoint 的方法

如果你会写代码,又不太想打开 PowerPoint,那你多半已经碰到过 Slidev。它自称"面向开发者的演示幻灯片",事实也正是如此:你用 Markdown 撰写每一页幻灯片,在需要的地方嵌入 Vue 组件和代码块,然后把整套幻灯片当作一个网页来演示——热重载、语法高亮、演讲者备注、交互式嵌入内容一应俱全。凭借 GitHub 上 47.6k 颗星和 MIT 许可证,当有人问"怎么用 Markdown 做出好看的幻灯片"时,它是首选答案之一。

这份指南会诚实地为它画一张地图。Slidev 究竟是什么、主题和示例如何配合、导出 PDF 和 PowerPoint 的真实表现(这里有个坑)、它与其他开源竞争者相比如何,以及——大多数文章都跳过的部分——像这样一个工具什么时候不再是对的选择、又该由别的东西接手。如果你正在为一套 AI 与 Agent 辅助的幻灯片工作流权衡各种选项,先弄清楚 Slidev 是什么、不是什么,会很有帮助。

Slidev 是什么

Slidev 运行在浏览器里,把你的幻灯片当作一个项目,而不是一份文档。你在单个 Markdown 文件里撰写幻灯片,用 --- 分隔各页,而开发者工具链正是它的核心:边打字边热重载、带行聚焦的一流代码高亮、LaTeX 和图表、带备注的演讲者模式,以及一个你从终端启动的开发服务器。当纯 Markdown 走到尽头时,你可以把 Vue 组件直接嵌进某一页——于是图表、实时计数器,或你自己写的交互小部件,就能内联地摆在要点旁边。因为输出本身就是一个 Web 应用,Web 能做的任何事都能出现在幻灯片上。

取舍就明明白白写在它的定位里:这是一个 开发者工具,而不是图形界面。你的工作流是代码编辑器加开发服务器,而不是带拖拽手柄的画布——这正是已经喜欢 Markdown 和 Web 组件的开发者会选它的原因,也正是非程序员会被它劝退的原因。它也是货真价实的免费:不用注册、没有水印、没有导出上限、没有按席位收费。Markdown 和围绕它的整个项目都归你所有。

主题与示例

围绕 Slidev 的大多数搜索,其实都是想让它看起来好看,又不用从零设计每一页,所以下面讲讲这些部分是怎么拼起来的。

Slidev 主题是内置的起点,也是它真正的一大优势。你在 frontmatter 里用一行设置主题(例如 theme: seriph),Slidev 就会把它拉进来。官方有一个主题画廊,社区还有一批以 npm 包形式发布的主题,从干净的编辑排版风格到深色的开发者大会风格都有。因为主题就是代码,所谓"自定义 Slidev 主题"意味着创建或 fork 一个主题包,配上你自己的版式、字体和配色——这比换一份样式表更费工夫,但可以完整地纳入版本控制。

Slidev 示例散落在文档和社区里,而不是集中在一个填空式的画廊。官网(sli.dev)本身就是用 Slidev 搭的,仓库里带有起步用的幻灯片,GitHub 上更满是真实的大会演讲,源码你都能读、能克隆。如果你在搜"slidev examples",信噪比最高的就是官方演示和文档源码——它们几乎把每个功能都摆在了实处。对新手来说,坑和任何代码优先的工具一样:这里的"示例"是一个可克隆、可编辑的仓库,而不是一个你在界面里填空的模板。

把 Slidev 导出为 PowerPoint 与 PDF

PDF 导出是一等公民、受官方支持,而且效果很好。Slidev 内置了 slidev export 命令(背后由 Playwright 驱动),能把每一页渲染成干净的、一页一张的 PDF——这是受支持的路径,导出的 PDF 和你的幻灯片长得一模一样。你也能用同样的方式导出成 PNG 图片。

而把 Slidev 导出为 PowerPoint,就是需要管理预期的地方了。Slidev 能生成 .pptx,但结果是有损的:每一页到了 PowerPoint 里都是一张扁平的图片,而不是可编辑的文本框、形状和版式。所以如果下游有人需要在 PowerPoint 里打开你的幻灯片并编辑它——重打一句标题、给图表换个样式、让某个要点重新排版——Slidev 导出的 .pptx 给不了他们这些。Slidev 生来就是要在浏览器里演示的,它可编辑的源是 Markdown 加 Vue,而不是 .pptx。在动手之前就明白这一点,能让你在同事哪天开口要"那份可编辑的 PowerPoint"时,免去一场难受的意外。

Slidev vs Marp vs reveal.js

Slidev 并不是把幻灯片写成代码的唯一途径。两个最接近的开源选择——也就是人们说"Slidev 替代品"时所指的——是 reveal.jsMarp。这里也该坦白:Open Design 处在一个完全不同的层次,而不是与它们正面竞争。

工具撰写方式可编辑 .pptx模板化许可证
SlidevMarkdown + Vue否(PPTX/PDF 为图片)Vue 组件 + 主题MIT
reveal.jsHTML 或 Markdown否(PDF→PPTX 为有损图片)主题 = CSS/Sass;社区模板MIT
Marp仅 Markdown否(PDF/PPTX 为图片)Markdown 主题(CSS)MIT
Open Design把需求描述给你的 Agent是——对着一套设计系统输出可编辑结果第一方幻灯片模板Apache-2.0

reveal.js 是更老、更原始的那个同门:你用 HTML(或 Markdown)撰写,靠 data 属性接入过渡效果,拿 Slidev 的 Markdown 顺手换取更底层的 HTML 控制力。如果你想要最大的自由度、又不介意写标记语言,reveal.js 是自然之选。Marp 则走向另一个方向——用 Markdown,刻意保持极简,没有组件——这让它在幻灯片以文字为主、你又完全不想操心框架时,成为最快的路径。Slidev 居于中间:以 Markdown 优先求速度,需要某一页多做点事时又能随手调用 Vue 组件。

这三者都是代码优先的工具,骨架本质相同:你写幻灯片、在浏览器里演示,可编辑的 PowerPoint 输出本就不是重点。在它们之间做选择,主要是看你想要哪种撰写载体——Markdown 加 Vue、原始 HTML,还是纯 Markdown——而不是谁有、谁没有某项能力。

Open Design 的位置

这里是一条诚实的边界。Slidev 要求你去这套幻灯片——每一页,用 Markdown 和 Vue。如果你想要手工撰写、纳入版本控制、带实时组件的幻灯片,这是优点,而且没有什么能替代它。

Open Design 是另一个层次,而且它是我们做的产品,请带着这一点来读下面的内容。它是一个开源(Apache-2.0)、本地优先、自备 key 的 Agent-Native Design Workspace,位于你已经在用的编程 Agent——Claude Code、Codex 或 Cursor——之外。你不必手写 Markdown 和组件,而是描述你想要的幻灯片,Agent 就对着一套设计系统生成一份可编辑的,于是它一出来就符合品牌调性,并且保持可编辑,而不是冻结成一件渲染好的成品。Open Design 还提供了可供起步的第一方幻灯片模板

如果你要的就是把幻灯片当代码写、用 Vue 组件、掌握完整控制权,那它不是 Slidev 的替代品——那是 Slidev 的主场,它在那里表现出色。Open Design 适合的场景是:你宁愿给 Agent 下简报,也不想写标记语言;你希望输出在许多套幻灯片之间都匹配同一套设计系统;你希望最后拿到归你所有的可编辑文件。当这套幻灯片就是你正在写的 Markdown 时,去找 Slidev;当这套幻灯片只是 Agent 为你产出的众多符合品牌调性的输出之一时,去找一个工作空间。

常见问题

Slidev 免费吗?免费。Slidev 在 MIT 许可证下开源——可免费商用,无需注册、没有水印、没有导出限制。你从自己的项目里自行运行它。

我该怎么使用 Slidev 主题?在幻灯片的 frontmatter 里设置主题(例如 theme: seriph),Slidev 就会安装并应用它。官方有一个画廊,npm 上还有社区主题。自定义主题意味着创建或 fork 一个主题包,配上你自己的版式、字体和配色——它是代码,不是你随手一换的样式表。

我能把 Slidev 导出成 PowerPoint 吗?Slidev 能导出 .pptx,但它是有损的——每一页都成了一张扁平图片,而不是可编辑的文本和形状。PDF 和 PNG 导出(通过 slidev export)才是干净的一等路径。如果你需要一份可编辑的 PowerPoint,Slidev 不是对的源头。

Slidev、Marp 还是 reveal.js——我该用哪个?三者都是开源、代码优先、MIT 许可证。要 Markdown 加 Vue 组件(幻灯片需要交互时很棒)就选 Slidev,要原始 HTML 控制力就选 reveal.js,要最简单的纯 Markdown 幻灯片就选 Marp。它们都不以可编辑的 PowerPoint 输出为目标。

用 Slidev 需要会写代码吗?基本上,需要。Slidev 是一个开发者工具——你在文本编辑器和终端里,跟 Markdown、Vue 和一个开发服务器打交道,而不是一个拖拽式图形界面。如果你更愿意用大白话描述一套幻灯片,那正是像 Open Design 这样的 agent-native 工作空间要填补的空白。

结语

Slidev 配得上它的 47.6k 颗星:它是一种免费、MIT 许可证、开发者优先的方式,用 Markdown 做出好看的幻灯片,还带有货真价实的主题、热重载、实时 Vue 组件和干净的 PDF 导出。只是要心里有数——它是一个你在里面写东西的工具,而不是一个你点点点就能用的应用,"导出成可编辑的 PowerPoint"并不是它擅长的事。如果你想把幻灯片当代码来撰写,Slidev(或 reveal.js / Marp)是个很好的归宿。如果你更愿意描述一套幻灯片、让你的 Agent 生成一份归你所有、可编辑、符合品牌调性的,那就该由一个 Agent-Native Design Workspace 来接手了。


← 返回博客 GitHub · 来源 ↗