关于fullname的建议
hooke007 opened this issue · comments
我稍微看了一下字体的内部命名,感觉有点乱
file_name | family_name | full_name |
---|---|---|
LXGWWenKai-Regular.ttf | LXGW WenKai | LXGW WenKai |
LXGWWenKai-Bold.ttf | LXGW WenKai | LXGW WenKai Bold |
LXGWWenKai-Light.ttf | LXGW WenKai Light | LXGW WenKai Light |
LXGWWenKaiMono-Regular.ttf | LXGW WenKai Mono | LXGW WenKai Mono |
LXGWWenKaiMono-Bold.ttf | LXGW WenKai Mono | LXGW WenKai Mono Bold |
LXGWWenKaiMono-Light.ttf | LXGW WenKai Mono Light | LXGW WenKai Mono Light |
light 为什么要单独分为一个族。
我用libass指定字体的时候发现一个问题,由于只能使用族名和全名,在已安装以上全部字体时,无法指定到Regular变体,因为和bold变体的族名撞车了——是否Regular变体的全名里加上 regular 更合理?
为了使 Windows 能用上 Light 字重,而 Prefer Font Family 还是 LXGW WenKai。就这么简单。
族名不统一不是大问题,因为标识不冲突。
Regular的full_name因为和Bold的family_name重合导致我的例子中无法调用
以往的版本也是这样吗?
我查看了首次release的bold,并没有和现在的版本有区别
我看了看思源的处理方式,不同变体的 family name, full name, postscript name 全都是独立的不同名称,简单粗暴但是理论上兼容不同软件对字体名的不同识别方式
edit: 更新了我的工具,,发现libass又能调用regular了。。怪。
不过还是可以考虑一下fullname 加上 regular 的建议
下次如有更新会考虑,不过最近更新实在太勤了(捂脸
@hooke007 其实现在的设置是正确的,主要是 Family name 还配 Subfamily name,而 Regular/Bold 是在 Subfamily name 设置的。如果软件正确读取的话,应该要同时读取 Family name + Subfamily name。
为什么 Light 会分开字重是因为 Subfamily name 受到 Windows 影响,只能设 Regular/Italic/Bold/Bold Italic 四个值,在例如 Microsoft Office 中对应 B / I 的按钮而调用,因此只能将 Light 分开设置。
我看了看思源的处理方式,不同变体的 family name, full name, postscript name 全都是独立的不同名称,简单粗暴但是理论上兼容不同软件对字体名的不同识别方式
思源黑体 2.0 起已经将 Bold 字重的 Family name 设置成和 Regular 字重的一样了。请见 思源黑体官方 README:
• Like Source Han Serif, the Regular weight is now style-linked to the Bold weight. This means that the Bold
weight may not appear in the font menu, particularly when using applications that support style-linking as
a way to make text bold.
如果要正确设置,除了 Family name 还需要设置 Typographic Family name 和 Typographic Subfamily name,而 Full name 和 Postscript name 则是 Typographic Family name + Typographic Subfamily name 组合而成。依照思源比对的话,文楷的设置是正确的。
特别注意是 Regular 和 Bold 因为 Family name/Subfamily name 可以正确设置,可以不设置 Typographic Family name/Typographic Subfamily name。