跳到正文

OpenType 字形特性指南

软件里的「标准连字」「等宽数字」「风格替换集」,背后通常就是 OpenType 特性,由字体提供、软件调用,用来替换字形或调整位置与间距

liga、tnum、ss01 是字体内部的四字符标签。Figma 等软件通常显示更易懂的名称,不必先记标签;你会在字体说明、网页 CSS,以及 Anyway.Fonts 的「字形特性」面板里看到它们

标签约定用途,具体设计由字体决定:tnum 都是让数字等宽,但数字的画法不同;ss01 是第一组风格替换,在一款字体里可能换掉 a,在另一款里可能换掉 g。是否支持、影响哪些字符,也要看当前字体与样式

使用细节与常见问题

在软件里怎么找? Figma 的 Type settings → Details 提供当前字体的 OpenType 选项,其他软件的名称和入口可能不同。菜单没有展示某项,并不等于字体没有收录,软件支持范围也会影响可用选项,详见 Figma 的使用说明

开启后为什么没变化? 特性可能只影响部分字符,需要特定语言、方向或前后文字;有些默认开启,有些由排版引擎自动处理。变动的是显示和排版,输入的字符通常不变,可变字体还可能受轴的位置影响

右侧样张怎么看? 前后都来自标注的同一款字体,使用同一段文字与同一字号。样张保留字体的实际字形和排版间距,数字样式会与对应的另一种样式比较;复杂文字中默认启用的特性,单独关闭只是为了看清它的作用,不建议照着关闭

名字相似的特性有什么区别? 比如 hwid 替换为半宽字形,halt 则调整原字形的占位;这分别涉及字形替换(GSUB)与定位(GPOS)。ss01 等编号也没有跨字体统一的画法,有时软件会显示字体作者提供的名称

怎么确认这款字体实际做了什么? 在 Anyway.Fonts 选中字体,打开右侧底部的「字形特性」,切换样式并展开查看。工具主要展示直接的字形替换,上下文规则、定位调整、没有 Unicode 编码的字形与可变条件可能无法完整呈现;没有示例不代表没有特性,最终效果要结合字体说明与软件中的试字判断

网页里怎么启用? 常见用途优先使用 font-variant-* 与 font-kerning,按标签控制可用 font-feature-settings,例如 font-feature-settings: "ss01" 1。语言和竖排还需设置 lang 与 writing-mode,详见 CSS Fonts 文档

数字与分数

金额要对齐,正文数字要融入,先看这一组

lnum

齐线数字

数字高度齐整,适合大写文字与醒目的数字标题

规范 ↗
EB Garamond输入 2026 012345
旧式
齐线
onum

旧式数字

数字有高低变化,部分笔画伸到基线下方,适合混排正文

规范 ↗
EB Garamond输入 2026 012345
齐线
旧式
pnum

比例数字

每个数字按形状占宽,适合连续阅读

规范 ↗
EB Garamond输入 111 / 888(分行排列)
等宽
比例
tnum

等宽数字

每个数字占位相同,便于金额和时间上下对齐

规范 ↗
EB Garamond输入 111 / 888(分行排列)
比例
等宽
zero

带斜线的零

用字体设计的斜线零,区分数字 0 与字母 O

规范 ↗
Junicode输入 0O 1000
关闭
开启
frac

斜线分数

把数字与斜线组合排成分数

规范 ↗
EB Garamond输入 1/2 3/4
关闭
开启
afrc

替代分数

使用另一种分数排法,常见上下堆叠式

规范 ↗
Onest输入 1/2
关闭
开启
numr

分子字形

用于分数上半部的小数字

规范 ↗
EB Garamond输入 12345
关闭
开启
dnom

分母字形

用于分数下半部的小数字

规范 ↗
EB Garamond输入 12345
关闭
开启
ordn

序数字形

用抬高的字母表示序数

规范 ↗
EB Garamond输入 1st 2nd
关闭
开启

上下标

专门画好的小字形,与直接缩小原字不同

sups

上标

使用上标字形,具体收录字符由字体决定

规范 ↗
EB Garamond输入 x2 + y3
关闭
开启
subs

下标

使用下标字形,帮助排出较小的下置字符

规范 ↗
EB Garamond输入 H2O CO2
关闭
开启
sinf

科学下标

用于科学排版的下置字形,通常在基线下方

规范 ↗
EB Garamond输入 H2O CO2
关闭
开启

连字与上下文

相邻字符可能合起来,也可能因前后文字而换个样子

liga

标准连字

用一个字形处理常见字符组合,改善笔画相接

规范 ↗
EB Garamond输入 fi fl ffi
关闭
开启
dlig

可选连字

字体提供的额外连字,常用于装饰与个性表达

规范 ↗
EB Garamond输入 st ct
关闭
开启
clig

上下文连字

只有遇到特定前后文字时才使用连字

规范 ↗
rlig

必需连字

某些文字正确书写所需的连字,由排版系统处理

规范 ↗
Noto Sans Arabic输入 سلام
关闭
开启
hlig

历史连字

使用传统排版里的连字形式

规范 ↗
EB Garamond输入 ſt
关闭
开启
calt

上下文替换

根据相邻字形选用替代形式

规范 ↗
Junicode输入 fí fê
关闭
开启
rclt

必需上下文替换

正确排版所需的上下文替代字形

规范 ↗

大小写与替代字形

同一个字符可以有另一种画法,替换编号也由字体自己定义

smcp

小型大写

把小写换成专门设计的小型大写

规范 ↗
EB Garamond输入 OpenType
关闭
开启
c2sc

大写转小型大写

把大写也换成小型大写

规范 ↗
EB Garamond输入 OPENTYPE
关闭
开启
pcap

更小型大写

使用高度更低的 petite capitals

规范 ↗
EB Garamond输入 OpenType
关闭
开启
c2pc

大写转更小型大写

把大写换成 petite capitals

规范 ↗
EB Garamond输入 OPENTYPE
关闭
开启
unic

混合大小写字形

让大写与小写字形共享一种统一设计

规范 ↗
case

大写标点调整

让标点位置与全大写文字更协调

规范 ↗
Onest输入 -> <--
关闭
开启
cpsp

大写字母间距

调整大写字母的间距

规范 ↗
Libertinus Serif输入 OPENTYPE
关闭
开启
salt

替代字形

为字符提供另一种字形选择

规范 ↗
Onest输入 ag
关闭
开启
ss01 – ss20

风格替换集 01–20

用一组协调的替代字形切换风格

规范 ↗
EB Garamond输入 ABC abc
关闭
开启
cv01 – cv99

字符变体 01–99

为特定字符提供变体,可能含多个选项

规范 ↗
Junicode输入 A
关闭
开启
aalt

所有替代字形入口

把可选字形集中提供给软件选择

规范 ↗
EB Garamond输入 office
关闭
开启
swsh

花饰字形

使用装饰性延长笔画与花体形式

规范 ↗
EB Garamond输入 Q
关闭
开启
cswh

上下文花饰

按前后位置选用花饰,避免笔画冲突

规范 ↗
titl

标题字形

使用字体为标题准备的替代设计

规范 ↗
hist

历史字形

使用旧式字符画法

规范 ↗
EB Garamond输入 past stories
关闭
开启
rand

随机字形

从替代字形中随机选择

规范 ↗
nalt

注记替代字形

使用圈号等注记形式

规范 ↗
Junicode输入 123
关闭
开启
ornm

装饰符号

提供装饰图案与花纹字形

规范 ↗
Junicode输入 •
关闭
开启
ital

意大利体字形

在字体内部选用意大利体替代字形

规范 ↗
expt

日文专家字形

提供日文专业排版偏好的替代字形

规范 ↗
BIZ UDPMincho输入 辻逢葛鯖樽
关闭
开启
falt

行末替代字形

选用适合行尾位置的形式

规范 ↗
jalt

两端对齐替代字形

通过换字形帮助文字两端对齐

规范 ↗
rvrn

必需可变字形替换

随可变字体的轴位置替换必要字形

规范 ↗

中文、日文与区域字形

同一个编码,可能因地区、语言或字形标准而有不同写法

smpl

简体字形

把字体支持的字符换成简体形式,编码保持不变

规范 ↗
WD-XL 滑油字 TC输入 國體學
关闭
开启
trad

繁体字形

把字体支持的字符换成繁体形式,编码保持不变

规范 ↗
WD-XL 滑油字 TC输入 国体学
关闭
开启
locl

本地化字形

按语言选择当地习惯的字形

规范 ↗
Noto Sans CJK JP输入 骨直令
默认
简中

同一字体,右侧配合简体中文语言设置启用 locl

jp78

JIS 1978 字形

使用对应日本字形标准的替代形式

规范 ↗
Noto Sans CJK JP输入 麹鴎噛剥頬
关闭
开启
jp83

JIS 1983 字形

使用对应日本字形标准的替代形式

规范 ↗
Noto Sans CJK JP输入 辻逢葛鯖樽
关闭
开启
jp90

JIS 1990 字形

使用对应日本字形标准的替代形式

规范 ↗
Noto Sans CJK JP输入 辻逢葛鯖樽
关闭
开启
jp04

JIS 2004 字形

使用对应日本字形标准的替代形式

规范 ↗
WD-XL 滑油字 TC输入 辻逢葛鯖樽
关闭
开启
hojo

补助汉字字形

对应 JIS X 0212 的补助汉字形式

规范 ↗
BIZ UDPMincho输入 瑢
关闭
开启
nlck

国语审议会字形

采用日本国语审议会推荐的字形

规范 ↗
Noto Sans CJK JP输入 麹鴎噛剥頬
关闭
开启
tnam

传统姓名字形

提供用于日本姓名的传统字形

规范 ↗
ruby

注音字形

使用专为小字号注音设计的字形

规范 ↗
BIZ UDPMincho输入 「かな。」
关闭
开启
hngl

韩文汉字替换

把字体支持的汉字替换为对应韩文

规范 ↗
hkna

横排假名字形

使用为横排设计的假名

规范 ↗
pkna

比例假名

使用按字形占宽的假名

规范 ↗

字宽与间距

先分清换了字形,还是只调整了位置与占位

kern

字偶间距

调整特定字形组合之间的距离

规范 ↗
EB Garamond输入 AVATAR To
关闭
开启
apkn

比例字宽字偶间距

配合 palt 调整字偶间距

规范 ↗
palt

比例间距

保留字形,调整横向占位与位置

规范 ↗
Noto Sans CJK JP输入 「かな。」
关闭
开启
halt

半宽间距

保留字形,把横向占位调整为半宽

规范 ↗
Noto Sans CJK JP输入 「かな。」
关闭
开启
hwid

半宽字形

换成占半个全宽位置的字形

规范 ↗
Noto Sans CJK JP输入 ABC123
关闭
开启
fwid

全宽字形

换成占一个全宽位置的字形

规范 ↗
Noto Sans CJK JP输入 ABC 123
关闭
开启
pwid

比例字宽

换成按形状占宽的字形

规范 ↗
Noto Sans CJK JP输入 ABC123
关闭
开启
twid

三分之一字宽

使用占三分之一全宽的字形

规范 ↗
qwid

四分之一字宽

使用占四分之一全宽的字形

规范 ↗
chws

上下文半宽间距

按相邻字符调整横排占位

规范 ↗
cpct

居中中日韩标点

把标点放在字框中间

规范 ↗
opbd

光学边界

提供用于视觉对齐的字形边界

规范 ↗
lfbd

左侧光学边界

调整视觉上的左侧对齐位置

规范 ↗
rtbd

右侧光学边界

调整视觉上的右侧对齐位置

规范 ↗
size

光学字号信息

提供适用字号等信息,辅助选择光学尺寸

规范 ↗

竖排

标点、方向、假名和上下占位,都可能需要专门处理

vert

竖排替换

使用适合竖排的替代字形

规范 ↗
Noto Sans CJK JP输入 ぁゃっ
关闭
开启

这里比较小假名的竖排位置,标点方向还会由排版引擎自动处理

vrt2

竖排替换与旋转

替换竖排字形,配合竖排方向处理

规范 ↗
Noto Sans CJK JP输入 ぁゃっ
关闭
开启

这里比较小假名的竖排位置,标点方向还会由排版引擎自动处理

vrtr

旋转用竖排字形

为旋转字符提供适合的竖排形式

规范 ↗
vkrn

竖排字偶间距

调整相邻字形的上下距离

规范 ↗
Noto Serif CJK JP输入 「かな。」
关闭
开启
vapk

竖排比例字偶间距

配合 vpal 调整竖排字偶间距

规范 ↗
vpal

竖排比例间距

保留字形,按形状调整竖向占位

规范 ↗
Noto Sans CJK JP输入 「かな。」
关闭
开启
vhal

竖排半宽间距

保留字形,把竖向占位调整为半个字高

规范 ↗
Noto Sans CJK JP输入 「かな。」
关闭
开启
valt

竖排替代度量

让字形在全高字框里视觉居中,不改变竖向占位高度

规范 ↗
vchw

竖排上下文半宽间距

按相邻字符调整竖排占位

规范 ↗
vkna

竖排假名字形

使用为竖排设计的假名

规范 ↗
Shippori Mincho输入 ァィゥェォ
关闭
开启

文字塑形与附标定位

多数由排版引擎自动处理,是正确显示文字的一部分

ccmp

组合与分解

把字形组合或拆分为适合排版的形式

规范 ↗
Junicode输入 b̴b̴
关闭
开启
mark

附标定位

把附加符号放到基础字形的合适位置

规范 ↗
Junicode输入 x́
关闭
开启
mkmk

附标之间的定位

调整多个附加符号的相对位置

规范 ↗
Noto Sans Arabic输入 بُّ
关闭
开启
mset

替换式附标定位

用字形替换的方式调整附标

规范 ↗
curs

连写定位

让相邻字形的连接点准确接上

规范 ↗
Noto Nastaliq Urdu输入 بسم
关闭
开启
dist

距离调整

处理特定文字正确排版所需的距离

规范 ↗
Noto Sans Devanagari输入 क्य
关闭
开启
init

词首字形

使用连接组起始位置的字形

规范 ↗
Noto Sans Arabic输入 بسم
关闭
开启
medi

词中字形

使用连接组中间位置的字形

规范 ↗
Noto Sans Arabic输入 بسم
关闭
开启
med2

第二种词中字形

提供另一种中间位置字形

规范 ↗
Noto Sans Syriac输入 ܐܠܗܐ
关闭
开启
fina

词尾字形

使用连接组结束位置的字形

规范 ↗
Noto Sans Arabic输入 بسم
关闭
开启
fin2

第二种词尾字形

提供另一种结束位置字形

规范 ↗
Noto Sans Syriac输入 ܒܐܒ
关闭
开启
fin3

第三种词尾字形

提供第三种结束位置字形

规范 ↗
Noto Sans Syriac输入 ܒܐܒ
关闭
开启
isol

独立字形

使用不连接其他字符的形式

规范 ↗
Noto Nastaliq Urdu输入 بسم
关闭
开启
ltra

从左到右替代字形

为从左到右排版选用替代字形

规范 ↗
ltrm

从左到右镜像字形

为从左到右排版提供镜像形式

规范 ↗
rtla

从右到左替代字形

为从右到左排版选用替代字形

规范 ↗
rtlm

从右到左镜像字形

为从右到左排版提供镜像形式

规范 ↗
Junicode输入 ᚠ
关闭
开启

从右向左排列,单独比较 rtlm 的字形替换

abvf

基础字形上方形式

使用基础字形上方的部件形式

规范 ↗
Noto Sans Khmer输入 កើ
关闭
开启
abvm

基础字形上方附标定位

把附标定位在基础字形上方

规范 ↗
Noto Sans Devanagari输入 र्क
关闭
开启
abvs

基础字形上方替换

处理基础字形与上方附标的替换

规范 ↗
Noto Sans Devanagari输入 किं
关闭
开启
blwf

基础字形下方形式

使用基础字形下方的连接形式

规范 ↗
Noto Sans Devanagari输入 राष्ट्र
关闭
开启
blwm

基础字形下方附标定位

把附标定位在基础字形下方

规范 ↗
Noto Sans Devanagari输入 कु
关闭
开启
blws

基础字形下方替换

处理基础字形下方的连接替换

规范 ↗
Noto Sans Devanagari输入 दु
关闭
开启
akhn

不可拆分连字

把必须保持整体的字符组合成连字

规范 ↗
Noto Sans Devanagari输入 क्ष
关闭
开启
cfar

Ro 之后的连接形式

处理高棉文 Ro 后面的连接字形

规范 ↗
cjct

连接形式

处理辅音连接形成的字形

规范 ↗
Noto Sans Devanagari输入 ट्यि
关闭
开启
half

半字形式

使用辅音的半字形参与组合

规范 ↗
Noto Sans Devanagari输入 क्य
关闭
开启
haln

Halant 形式

使用词尾等位置需要的 halant 形式

规范 ↗
Noto Sans Tamil输入 தமிழ்
关闭
开启
nukt

Nukta 形式

处理带 nukta 附标的字符组合

规范 ↗
Noto Sans Devanagari输入 क़
关闭
开启
pref

基础字形前方形式

使用出现在基础字形前方的形式

规范 ↗
Noto Sans Khmer输入 ក្រ
关闭
开启
pres

基础字形前方替换

处理基础字形前方的组合替换

规范 ↗
Noto Sans Devanagari输入 क्ति
关闭
开启
pstf

基础字形后方形式

使用出现在基础字形后方的形式

规范 ↗
Noto Sans Khmer输入 ្ឃ
关闭
开启
psts

基础字形后方替换

处理基础字形后方的组合替换

规范 ↗
Noto Sans Devanagari输入 ः᳢
关闭
开启
rkrf

Rakar 形式

处理辅音后面的 Ra 连接形式

规范 ↗
Noto Sans Devanagari输入 द्र
关闭
开启
rphf

Reph 形式

处理 Ra 的 reph 形式

规范 ↗
Noto Sans Devanagari输入 र्क
关闭
开启
vatu

Vattu 变体

处理特定 Ra 部件的连接形式

规范 ↗
ljmo

韩文首音字母形式

选择音节起始部分的字形

规范 ↗
Noto Sans CJK JP输入 ꥠᅡᆨ
关闭
开启
vjmo

韩文中音字母形式

选择音节元音部分的字形

规范 ↗
Noto Sans CJK JP输入 ꥠᅡᆨ
关闭
开启
tjmo

韩文尾音字母形式

选择音节收尾部分的字形

规范 ↗
Noto Sans CJK JP输入 ꥠᅡᆨ
关闭
开启
stch

拉伸字形分解

把字形拆成可扩展的部件

规范 ↗
Noto Sans Syriac输入 U+070F 叙利亚文缩写标记 + ܒܒܒܒ
关闭
开启

数学排版

公式里的字形可能随位置与字号调整

dtls

无点字形

去掉 i、j 等字形上的点,留出附标空间

规范 ↗
STIX Two Math输入 ij
关闭
开启
flac

扁平重音形式

使用适合较高字形的扁平重音

规范 ↗
STIX Two Math输入 ̂̃
关闭
开启

单独展示重音轮廓,公式中由排版引擎放到附标位置

mgrk

数学希腊字形

使用用于数学排版的希腊字母形式

规范 ↗
ssty

数学脚标样式

使用适合公式脚标层级的替代字形

规范 ↗
STIX Two Math输入 xy ij
关闭
开启