Typst 页面设置完全指南:从基础到高级布局技巧
作为一款现代化的排版系统,Typst 提供了强大而灵活的页面配置功能。本文将全面解析 Typst 中的页面设置方法,帮助您创建专业级的文档布局。
页面基础设置
Typst 中每个页面都有宽度(width)、高度(height)和四个边距(margin)。通过 #set page()
规则可以控制所有页面属性,建议在文档开头或模板中设置。
#set page(
paper: "a4",
margin: 2cm,
header: [文档标题],
footer: [页码],
)
常用纸张规格
Typst 支持多种标准纸张规格:
- ISO 216 系列:
"a4"
,"iso-b5"
等 - 美国标准:
"us-letter"
,"us-legal"
等 - 自定义尺寸:通过
width
和height
参数指定
#set page("us-letter") // 使用美式信纸
#set page(width: 210mm, height: 297mm) // 自定义尺寸
边距设置详解
合理的边距设置对文档可读性至关重要。Typst 提供了多种边距配置方式:
统一设置所有边距
#set page(margin: 2cm) // 所有边距设为2厘米
差异化设置边距
#set page(margin: (
top: 3cm,
bottom: 2cm,
left: 2.5cm,
right: 2.5cm,
))
简写方式
#set page(margin: (
x: 2cm, // 左右边距
y: 3cm, // 上下边距
rest: 1cm // 未指定边距
))
装订边距设置
对于需要装订的文档,可以使用 inside
和 outside
参数:
#set page(margin: (
inside: 3cm, // 装订侧边距
outside: 2cm, // 外侧边距
y: 2cm // 上下边距
))
页眉页脚高级配置
页眉和页脚是文档导航的重要元素,Typst 提供了灵活的配置方式。
基础页眉页脚
#set page(
header: [公司名称 - 文档标题],
footer: [页码],
)
条件性页眉页脚
#set page(header: context {
if counter(page).get().first() > 1 [
第 #counter(page).display("1") 页
]
})
带样式的页眉页脚
#set page(
header: rect(fill: blue.lighten(90%))[
#text(weight: "bold")[重要文档]
],
footer: line(length: 100%)[页码: #counter(page)]
)
页码系统详解
Typst 的页码系统支持多种显示格式和自定义样式。
基础页码
#set page(numbering: "1") // 阿拉伯数字
#set page(numbering: "i") // 罗马数字
带总页数的页码
#set page(numbering: "1/1") // 显示"当前页/总页数"
自定义页码样式
#set page(footer: context [
第 #counter(page).display("1") 页
共 #counter(page).final().display("1") 页
])
页码重置与跳过
#counter(page).update(1) // 重置页码
#counter(page).update(n => n + 3) // 跳过3页
多栏布局技巧
多栏布局是学术论文和杂志常用的排版方式。
基础两栏布局
#set page(columns: 2)
#set columns(gutter: 1cm) // 栏间距
混合单双栏布局
#set page(columns: 2)
#place(
float: true,
scope: "parent",
[单栏标题]
)
== 双栏正文内容
局部多栏布局
#rect(
columns(2)[
这里是左侧栏内容...
这里是右侧栏内容...
]
)
特殊页面处理
有时需要在文档中插入特殊格式的页面。
横向页面
#page(flipped: true)[
= 横向表格
#table(columns: 3, ...)
]
自定义边距页面
#page(margin: 1cm)[
这个页面使用特殊边距设置
]
专业排版建议
- 行长控制:理想行长应为45-75个字符,通过边距和栏宽调整
- 视觉平衡:最后一页的栏高应尽量保持一致
- 装订考虑:预留足够的装订边距(通常内侧边距比外侧大)
- 标题页:通常不需要页眉页脚和页码
通过掌握这些Typst页面设置技巧,您可以创建出既美观又实用的专业文档。记住,好的排版应该服务于内容,而不是分散读者的注意力。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考