☰
Typst set 规则与 show 规则:3 步上手的完整指南
2026/10/26 15:07:50 网站建设 项目流程

Typst set 规则与 show 规则:3 步上手的完整指南

【免费下载链接】typstA markup-based typesetting system that is powerful and easy to learn.项目地址: https://gitcode.com/GitHub_Trending/ty/typst

改了第一页的标题,后面十页的版式全跟着跑。做文档的人都遇到过:Typst 的set 规则与 show 规则一个管属性配置,一个管渲染逻辑,分不清边界,样式一改就整篇跑版。

一个类比看懂 Typst 样式控制

把 Typst 想成一家印刷厂。set 规则是控制面板上的旋钮:字号、页边距、对齐方式,拧一下,机器照常印,只是参数变了。show 规则是整块模具换掉:原来印出来什么样不管了,新模具压出什么就是什么。

调参数和换模具,是两个量级的操作。后面所有用法,都从这句话里长出来。

三步上手 Typst 全局样式设置与标题自定义

拿一份课程讲义练手,三步走完 set 与 show 的配合。

实验 1:用 set 配全局基础样式

#set page(paper: "a4", margin: 2.2cm) #set text(font: "Source Han Serif", size: 10.5pt) #set par(justify: true)

三行 set 下去,整篇讲义就是 A4 纸、衬线字体、两端对齐。旋钮拧好,机器开工。

实验 2:块级作用域局部覆盖

#box(width: 100%, inset: 8pt, fill: lightgray)[ #set text(size: 9pt, color: darkblue) 本节要点:只有这一块变小、变蓝 ]

set 只在方括号作用域内生效,出了块就回到全局值。讲义里给要点框单独换色,靠的就是这个。

实验 3:用 show 做 Typst 标题自定义

#show heading.where(level: 1): it => block(width: 100%, fill: navy)[ #set align(center) #text(fill: white)[#smallcaps(it.body)] ]

一级标题变成深蓝底、白字、居中的小型大写,二级及以下标题原样不动。拧旋钮做不到这点,只能把标题的印刷模具整个换掉。

set 与 show 选型一张表

使用场景推荐规则一句话理由
页面尺寸、字号、页边距set属性有现成旋钮
全局字体、段落对齐set一处配置全篇生效
重写标题长相show改结构只能换模具
不同级别标题不同样show按条件走不同模具
元素变成另一种组件show输出输入不是一类东西

口诀就一句:能拧旋钮的用 set,拧不动的才上 show。

避坑清单 ⚠️

  • 症状:#set heading(numbering: "1.") 和 #show heading 都写了,编号不显示。→ 原因:show 优先于 set,渲染被重定义后,编号进不了新模具。→ 解法:用了 show,就在 show 里把编号和样式一起写全。
  • 症状:只想改一章字号,整篇文档跟着变。→ 原因:set 写在顶层,作用域漏到全文。→ 解法:把 set 收进 #box 这类块里限定作用域。
  • 症状:set 写在段落后面,那段没变样式。→ 原因:set 只影响同作用域内它之后的内容。→ 解法:把 set 挪到内容上方。
  • 症状:十几个 show 堆满全文,改一处崩一片。→ 原因:能用旋钮解决的事动了模具。→ 解法:默认 set,拧不动才上 show。

先拧旋钮,再换模具,样式就不会跑。想继续练手,可以看官方教程的高级样式章节。

【免费下载链接】typstA markup-based typesetting system that is powerful and easy to learn.项目地址: https://gitcode.com/GitHub_Trending/ty/typst

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询