如何在Typst中使用无衬线字体?Arial、Helvetica均无法生效
解决Typst无衬线字体设置失效问题
为什么你的代码没生效?
你用的Helvetica、Arial属于系统字体,如果你的设备没安装这两款字体,Typst找不到就会回退到默认衬线字体;而sans-serif通用字体名在部分环境下没有正确映射到Typst内置的无衬线字体,导致设置失效。
正确设置无衬线字体的方法
- 直接用Typst内置无衬线字体
Typst自带无需额外安装的无衬线字体,比如Inter(默认内置),直接使用即可:
#set text(font: "Inter") Some text.
- 更稳妥的字体栈写法
把内置字体放在前面兜底,再加上系统字体和通用名,确保在任何环境都能显示无衬线样式:
#set text(font: ( "Inter", "Helvetica", "Arial", "sans-serif" )) Some text.
- 使用系统已安装的无衬线字体
如果你确认设备装了某款无衬线字体(比如Windows的Segoe UI、Mac的San Francisco),直接写字体的准确名称即可:
#set text(font: "Segoe UI")
Typst支持的无衬线字体
- 内置无衬线字体:Inter、Roboto、Open Sans(这些是Typst自带的,无需系统安装就能用)
- 系统无衬线字体:只要你设备上安装的无衬线字体都支持,比如Arial、Helvetica、Calibri、Segoe UI、San Francisco等,注意要填写字体的准确名称(可在系统字体管理器中查询)
内容的提问来源于stack exchange,提问作者Rainb
相关产品推荐
相关产品推荐

