Ulrike Fischer 表示Linux Libertine 的特殊连字符如何访问。尽管她也向我指出了其中一章LaTeX 图形伴侣,我不太确定如何自动获取这些连字符,可能是因为我对字体并不熟悉,而且我可能永远不会熟悉。我最终要寻找的是
\newligature{tt}{\libertineGlyph{uniE03C}}
将 (tt-ligature) 处的字形分配0xeo3c
给输入字母组合tt
。
我假设没有软件包可以做到这一点,但如果可能的话,这可能是对源自 tex.sx 的软件包列表的一个很好的补充!也许了解 (La)TeX 核心的人可以尝试模仿标准连字符的方式,例如ff生产了?
Libertine 连字符的代码点列于Libertine 的 XeTeX 德语文档,但我希望此解决方案适用于任何字体。显然,使用 XeLaTeX 的连字很简单,但我喜欢独立于系统上安装的字体,并且使用此处所需的解决方案,您可以准确指定所需的连字。
答案1
这在 LaTeX 级别是不可能的;连字是在.tfm
字体文件中定义的,并且无法更改它们(pdftex
只能清除特定字体的连字列表)。
t
为了检查是否有另一个命令跟随而进行活动的策略t
只适用于有限数量的文本,因为它会破坏所有包含 的命令名称t
。
答案2
我承诺的 luatex 概念验证比我想象的要容易,因为:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Linux Libertine O}
\begin{document}
Whatt?
\end{document}
已经使用 tt-ligature。
但是假设您想要花哨的 s_t 连字,而又不启用Ligatures=Historic
fontspec 中的功能,则可以使用.fea
-file:
\documentclass{article}
\usepackage{fontspec}
\setmainfont[FeatureFile=myligatures.fea]{Linux Libertine O}
\begin{document}
strict
\end{document}
其中myligatures.fea
:
languagesystem DFLT dflt ;
languagesystem latn dflt ;
feature liga {
sub s t by s_t ;
} liga ;
这是一个例子(第一行包含常规连字符 + 文件myligatures.fea
,第二行包含Ligatures=Historic
fontspec 功能: