放映、演讲者视图与导出

演示是一个普通网页:开发时用 npx slidehtml dev <name> 在浏览器里打开,交付时用 npx slidehtml build <name> 生成 dist/<name>.html。这个文件是单个离线文件,字体、图片、脚本都已内联,可以直接发给别人用浏览器打开,不需要联网。

快捷键

操作按键
下一页 / 上一页→ ←,Space,PageDown PageUp
第一页 / 最后一页Home / End
全屏F,或控制栏右侧按钮
总览全部页面G;方向键选择,Enter 打开,Esc 返回
自动播放P 开始 / 暂停,每 8 秒前进一步(含逐条展开),到最后一页自动停
演讲者视图S 打开新窗口
激光笔L 开 / 关,Esc 关
画笔D 开 / 关,C 清除;翻页自动清除
局部放大Z 后点一下放大 2 倍;再按 Z、Esc 或翻页恢复
跳到某页点击底部进度条,或打开 #/N(例如 #/5)
Bento 展开 / 返回点击卡片或按 Tab Enter / Esc

控制栏:移动鼠标时出现在右下角,有上一步、播放、下一步、总览、全屏几个按钮;鼠标静止 2.4 秒后隐藏,截图和投影时不会露出来。

逐条展开:设了 build 的页,用 → / Space 进入后每按一次出现一项;页眉右侧的小圆点显示进度,全部出现后再按才翻页;← 逐项收回。用进度条、总览或 #/N 跳过来时直接显示全部内容。写法见 guide.md 第 14 节。

演讲者视图

按 S,或直接打开 #/presenter。新窗口里有当前页、下一页、备注、计时器和时钟。在任一窗口翻页,另一个窗口会同步。常见用法是把演讲者窗口留在笔记本屏幕上,把放映窗口拖到投影上按 F 全屏。

备注写在每页的 notes 上:

{ id: 'numbers', label: '规模', notes: '先停 3 秒,让大家看清数字。', render: () => <StatRow … /> }

导出 PDF

打开 #/print,点“打印 / 存为 PDF”,在浏览器的打印对话框里选“存为 PDF”。每页一张幻灯片,逐条展开的内容全部显示。毛玻璃模糊和渐变字在 PDF 里会简化。

纹理与翻页方式

这两个是整份演示的选项,写在 DeckDef 上:

export const deck: DeckDef = {
  title: '…',
  texture: 'grain',      // none(默认)/ grain / paper / noise-dark,整页淡淡的纹理
  transition: 'slide',   // fade(默认)/ slide / zoom / wipe / none
  backdrop: 'dots',      // none(默认)/ dots / mesh / paper / particles / grid,内容后面的背景层
  slides: [ … ],
}

backdrop 是垫在内容下面的装饰背景:dots 点阵、mesh 慢速流动的色块渐变、paper 纸张颗粒、particles 粒子、grid 缓慢缩放的方格。颜色跟随主题和深色页;动画很慢,开启“减少动态效果”或打印时静止。单页可以用 SlideDef.backdrop 覆盖,写 'none' 关掉(例如整页照片)。

目录里的章节编号会飞到下一页章节页的大号数字上,这是 Agenda 和 SectionBreak 自带的翻页衔接,不需要设置。

其他地址

地址内容
#/1 … #/N放映第 N 页
#/presenter演讲者视图
#/print打印 / 导出 PDF
#/kit模板库:每个模板的实时预览
#/kit/styles风格样张墙
#/kit/icons图标索引,点击复制名称
?deck=<name>开发时切换到另一份演示