Typst的style
时间: 2025-05-11 12:26:56 浏览: 26
### Typst 的样式用法与配置
Typst 是一种现代化的文档排版工具,其核心设计理念在于简化用户的操作流程并提供强大的自定义能力。以下是关于 Typst 中样式的具体用法以及如何通过配置实现个性化需求的内容。
#### 基本概念
在 Typst 中,样式可以通过设置变量来控制文档的表现形式。这些变量可以影响字体大小、颜色、间距等多个方面[^1]。例如:
```typst
// 设置全局字体大小
set font.size = 12pt
// 修改段落缩进
set paragraph.indent = 2em
```
上述代码展示了如何调整全局字体大小和段落首行缩进的距离。这种设定方式适用于整个文档范围内的默认表现。
#### 局部应用样式
除了全局修改外,还可以针对特定部分单独指定样式属性。这通常用于强调某些文字或者创建特殊格式区块[^2]。下面是一个例子展示如何局部改变文本的颜色和加粗效果:
```typst
text("This is normal text.")
with color.red & bold:
text("This part stands out!")
```
这里 `with` 关键字后面跟随的是多个叠加在一起的效果声明(即红色加上粗体),随后紧跟的应用区域仅限于括号内部所包裹的内容。
#### 自定义组件
对于更复杂的布局需求,则可能需要构建自己的宏命令或模板结构。比如设计一份简历时可能会希望有统一风格的工作经历条目列表项。此时就可以先定义好基础框架再重复利用[^3]:
```typst
// 定义工作经历条目的显示模式
let jobEntry(title, company, dateRange, description) =
box(
margin.bottom = 0.5cm,
[
title(style=heading): @title
italic: @company | (@dateRange)
para: @description
]
)
jobEntry("Software Engineer", "TechCorp Inc.", "Jan 2020 - Present",
"Developed scalable backend services using Rust programming language.")
jobEntry("Junior Developer", "Startup Ltd.", "Jun 2018 - Dec 2019",
"Maintained legacy PHP codebase while gradually migrating to modern frameworks.")
```
此片段说明了怎样封装常用单元成可重用的形式,并且保持一致性的同时减少冗余书写量。
#### 主题切换功能
最后值得一提的功能就是主题支持。如果项目涉及不同场合下的视觉呈现变化(如白天黑夜模式转换),那么预先准备好几套方案将会非常方便实用[^4]。如下所示简单演示两种配色方案之间的快速转变方法:
```typst
theme.light() {
set background.color = white
set foreground.color = black
}
theme.dark() {
set background.color = darkgray
set foreground.color = lightgray
}
```
调用相应函数即可立即生效对应的整体外观更改。
---
阅读全文
相关推荐

















