机舱字体无法正确呈现撇号

机舱字体无法正确呈现撇号

我正在使用 Cabin 字体和 XeLaTeX。撇号渲染不正确。

L正如您在下面的屏幕截图中看到的,d和之间没有足够的空间a

在此处输入图片描述

在此屏幕截图上(使用默认的 LaTeX 字体),没有问题:

在此处输入图片描述

可以修复这个问题吗?

MWE(使用 XeLaTeX):

\documentclass[12pt]{article}
\usepackage{fontspec}
\setmainfont{Cabin}
\begin{document}
L'apostrophe
\end{document}

答案1

在此处输入图片描述

看起来它与小写字母之间的间距非常紧密 (1)。您可以\mbox使用 (2) 来防止字距调整。我认为单词间距太大 (3),或者您可以使用 xetex 字符间标记类来添加额外的字距,在这里我为小写 ascii 字母设置了一个类,并'为小写 ascii 字母设置了一个类,如果紧接着一个字母,则注入一个小的字距'

\documentclass[12pt]{article}
\usepackage{fontspec}
\setmainfont{Cabin}

\begin{document}
L'apostrophe

L\mbox{'}apostrophe

L' apostrophe

\XeTeXinterchartokenstate=1
\newXeTeXintercharclass\aposclass
\newXeTeXintercharclass\letterclass
\XeTeXcharclass`\'=\aposclass
\count0=`a
\loop
\XeTeXcharclass\count0=\letterclass
\advance\count0 1
\ifnum\count0<`z
\repeat
\count0=1

\XeTeXinterchartoks\aposclass\letterclass{\kern.1em}

L'apostrophe

\end{document}

相关内容