我正在使用 libertinus 字体系列,最新版本来自github。但是,我的系统上也安装了该字体,但我停止使用此版本,因为数学字体存在问题,我必须说我忘记了(此网站上有一个关于此问题的问题)。到目前为止,我没有遇到任何问题,但我注意到 github 版本中缺少一些连字符(例如 T_h)。我使用 FontForge 查看了字体文件,在我看来,字体实际上缺少这个连字符以及其他连字符(只有基本连字符存在,例如 f_i)。为什么会这样?我认为较新的字体版本会有更多的连字符。它们怎么了?
这是一个例子(我正在编译lualatex main.tex
)
\documentclass{scrartcl}
\usepackage{fontspec}
\def\installpath{/path/to/local/fonts}
\setmainfont{LibertinusSerif}[
UprightFont = *-Regular,
BoldFont = *-Bold,
ItalicFont = *-Italic,
BoldItalicFont = *-BoldItalic,
Ligatures = TeX,
Extension = .otf,
Path = \installpath/
]
%\setmainfont{Libertinus Serif}
\begin{document}
Ligatures: ff fi fl ffi fft fb fh fj fk ft Qu Th
\end{document}
答案1
根据文档https://github.com/libertinus-fonts/libertinus/blob/master/documentation/Opentype-Features.pdf,Th 连字符现在位于“自由连字符”集中,默认情况下处于关闭状态。请注意,这还会启用(至少)tz 连字符。如果您不想要其他连字符(例如 tz),那么也可以通过在中间放置零宽度连接符 (ZWJ) 来获取 Th 连字符。即T<U200D>h
→ T_h
。
Qu 连字符已移至 Contextual Alternates,这应该是在默认情况下。默认情况下,此功能在 中不起作用lualatex
,但在 中起作用,这表明或处理字体的方式xelatex
有问题。lualatex
fontspec
lualatex
这应该与 github 中的最新文件(6.6 版后)兼容:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Libertinus Serif}
\begin{document}
Common Ligatures: ff fi fl ffi fft fb fh fj fk ft Qu Th tt tz ck ch
With \verb|ZWJ|: Th
\addfontfeatures{Contextuals=Alternate}
With \verb|Contextuals=Alternate|: Qu
\addfontfeatures{Ligatures=Rare}
With \verb|Ligatures=Rare|: Th tt tz ck ch
\end{document}