garamond-libre 和小型大写字母

garamond-libre 和小型大写字母

我想使用garamondlibre软件包提供的 Garamond 字体。不幸的是,小写字母似乎会导致一些问题:一个小问题是会\textsc{ff}产生使用通常小写字母的 ff 连字;我可以通过禁用 scshaped 文本的连字来解决这个问题(见下文)。但是,以下涉及字符“ü”的最小示例

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{microtype}
\DisableLigatures{shape=sc}
\usepackage{garamondlibre}

\begin{document}
\textsc{Aufführung}
\end{document}

产生以下结果:

\textsc{提升}

理论上,我可以通过使用amsmath包来作弊,改为编写

\textsc{Auff$\ddot{\textsc{u}}$hrung}

这实际上看起来相当不错(即使点没有完全居中):

\textsc{Auff$\ddot{\textsc{u}}$hrung}

我也可以使用OT1fontenc包的 -option,但这会产生太高的点数:

在此处输入图片描述

有没有更好的方法来解决这个问题?

答案1

与 的许多其他字体一样pdflatex,GaramondLibre 是通过将 OpenType 字体转换为 获得的otftotfm(如 的文档中所述)garamondlibre

如果我们使用 LuaLaTeX 或 XeLaTeX 运行以下代码

\documentclass{article}
\usepackage{garamondlibre}

\begin{document}

\textsc{Aufführung}

\end{document}

我们发现问题完全相同:

在此处输入图片描述

恐怕只有未修饰的拉丁字母才支持小写字母。OpenType 字体的自动转换与smcpOpenType 功能相同:它会在特定表中查询变体字形,如果找不到,则返回正常字形。

抱歉,但除非通过至少添加最常见的带变音符号的字母来修复 OpenType 字体并重新转换为旧版 TFM 字体,否则不可能使其正常工作。

为了完整性,我添加了输出

Aufführung

\textsc{Aufführung}

首先garamondlibre

在此处输入图片描述

然后ebgaramond

在此处输入图片描述

无论哪种情况,\usepackage[T1]{fontenc}都被使用。

答案2

如果只是一次性的,而不是扩展字体,你可以打破 ff 连字符并将重音符号放在普通的 u 上。由于这是使用 Unicode 组合重音符号而不是经典 TeX,因此\accent它仍将正确剪切和粘贴AUFFÜHRUNG

使用 lualatex:

在此处输入图片描述

\documentclass{article}
\usepackage{garamondlibre}

\begin{document}

\textsc{Aufführung}

\textsc{Auf\/f\"{\/u\kern-.05em}̈\kern.05em hrung}

\end{document}

相关内容