PPT里放代码:字号、例子长度与导出检查

先保留要解释的代码,再按场地测试字号和对比度。十到十二行可以作为起稿参考,不能保证所有房间都可读。ToSlides代码块导出为可编辑等宽文本,当前从11磅起步并可能继续缩小,没有语法高亮或逐行动画。导出后调大字体、手动标出关键行,并准备现场演示无法运行时的替代页面。

发布于 2026年10月29日约 4 分钟读完

PPT里放代码时,要检查后排看到的效果,而不只是在编辑器里看。四十行函数在笔记本上能读清,投影后可能太小。先保留这次要解释的代码,选好能看清的字号,再把补充实现放进备注或代码仓库链接。

PPT里放代码,一页到底放多少行

起草时可以先试十到十二行,再查看投影效果。能放多少与每行长度、字号、观看距离和讲解时间有关,没有保证所有场地都看得清的固定行数。如果一个例子非得三十行才讲得通,那它其实更适合做成讲义,或者直接给一个代码仓库链接。

可以删去与本次解释无关的导入、日志和初始化,但涉及错误处理或类型约束的主题仍要保留对应内容。省略的实现应标明,避免让示例看起来像一份完整程序。中间那段无关紧要的逻辑,换成一行 // ...校验输入... 这样的注释,代码的结构依然是真实的。另一个敌人是长行,代码一旦折行,比折行的文字难读得多。与其缩小字号,不如先改个短一点的变量名,把一个调用拆成两行,或者缩短字符串。

后排看得清:字号和对比度

等宽字体让各字符占用相同宽度,方便保持缩进。与正文字体相比,一行会占多宽,仍取决于具体字体和字符,不能统一认定每个字都更宽。于是很多人下意识去调小字号,这恰恰是错的。应该先按场地定好字号,再删代码,删到放得下为止。演示字号计算器可以按房间纵深和屏幕尺寸给出最小可读字号,代码至少应该和正文要点享受同样的待遇。

对比度比配色更要紧。投影仪会把浅色洗得发白,浅灰的注释、很多编辑器主题里柔和的粉彩色,投上去可能直接消失。深色底配浅色字一般比较扛得住,前提是现场灯光不要太亮。条件允许的话,提前在真正要用的投影仪上过一遍,并且走到最后一排去看。

让观众一眼找到关键那一行

几乎每一页代码里,都有一行承载着要讲的那个想法,不该让观众自己去找。最直接的办法是视觉上的:把那一行加粗或换成强调色,其余的调暗。嘴上说一句“看第三行”也很有用,让读者知道你正在解释哪一处。

要讲两个版本之间改了什么,左右并排的“改前、改后”通常比带加减号的统一 diff 好懂,后者需要一定经验才能快速读出来。旧版本放左边,新版本放右边;或者这一页放旧的、下一页放新的,其他内容一个字都不动,眼睛自然会盯住变化的地方。

长例子拆成几页讲

例子实在压不短的时候,就把它摊开,而不是硬塞。每一页只讲一步:先是函数签名和输入,再是核心循环,最后是返回什么。每页顶部重复一两行上下文,比如函数签名,刚才走神的人也能找回位置。几页之间的缩进要保持一致,代码如果一翻页就左右跳动,看起来就像换了一段程序。

用 Markdown 代码块写,再导出成 PPT

在文本框里手动排代码很折腾,从编辑器直接复制又会带上一堆你不想要的字体和背景色。用 Markdown 写幻灯片可以绕开这两个问题。在 Markdown 转 PPTX 里,单独一行三个短横线表示新的一页,第一个标题就是页面标题,用三个反引号围起来的代码块依然是代码块:

## 指数退避重试

```python
for attempt in range(5):
    if send(request):
        break
    sleep(2 ** attempt)
```

Note: 指着 sleep 那一行讲,等待时间翻倍就是全部的思路。

---

导出后,代码块会变成深色底框上的等宽文字。它是 PowerPoint 原生文本,不是截图,所以导出后照样可以在 PowerPoint 里改错字、把关键行加粗、手动给某个关键字换颜色。当前代码导出使用11磅作为起始字号,放不下时还可能继续缩小,投影时可能偏小。应在PowerPoint里调大字号,并把长代码拆页,不要默认导出已选好适合现场的字号。Note: 那一行会进入演讲者备注栏,不会出现在页面上。想让代码和解释并排,在这一页加一行 <!-- layout: two-col --> 注释就会分成左右两栏,正好适合上面说的改前改后对照。导出之前,可以先在 Markdown 幻灯片编辑器里实时预览。

什么时候该切到现场演示

静态的幻灯片擅长展示代码长什么样,却不擅长展示它怎么运行:跑得有多快,报错信息长什么样,界面点一下会有什么反应。如果这一段要表达的是“大家看会发生什么”,那就切到终端或浏览器,让它真的发生。

现场演示也应准备无法正常运行时的替代内容。在演示后面紧跟一页,放上代码和预期输出,万一网络断了或者少装了一个依赖,就可以在网络或依赖不可用时,继续说明预期结果,不必现场排障。终端字号要调到在自己笔记本上看着都嫌大的程度,开讲前记得关掉各种通知弹窗。

诚实说明:目前做不到什么

代码块导出为可编辑等宽文字,当前起始字号为11磅,放不下时还可能缩小。没有语法高亮、行号、diff标记或逐行出现,也不能运行代码。需要在PowerPoint里调字号和重点样式。ToSlides使用四套主题,没有动画转场或自由拖拽画布;AI生成另需登录和积分。

常见问题

一页 PPT 放多少行代码比较合适?

可以先试十到十二行,再按实际观看距离测试。长行要缩短,复杂例子可以拆页;字号、场地和留给观众的阅读时间,比固定行数更重要。

演示时代码用多大的字号?

至少不要小于这个场地里正文要用的字号。可以用演示字号计算器,按房间纵深和屏幕尺寸算出一个最小可读字号,再按这个字号删减代码。

ToSlides 导出的 PPT 里代码有语法高亮吗?

没有。代码块导出后是深色底框上的等宽文字,没有语法配色,也没有行号。但文字可以编辑,需要强调的地方可以在 PowerPoint 里手动加粗或换颜色。

导出的代码是图片还是可编辑文字?

是可编辑的 PowerPoint 原生文本,不是截图。导出后可以在 PowerPoint、Keynote 或 Google 幻灯片里改错字、调字号,或者把关键那一行标出来。

怎么让代码和解释左右并排?

在 Markdown 里给这一页加上 <!-- layout: two-col --> 注释,页面会分成左右两栏,一边放代码,一边写解释,也适合做改前改后的对照。

继续阅读