XeLaTeX:使用花饰调整字母间距

XeLaTeX:使用花饰调整字母间距

我正在尝试使用 XeLaTeX 在 EB Garamond 中排版一个单词,并且我希望单词中只有两个字母带有花饰。但是,花饰字符会弄乱字母间距:

\documentclass[12pt]{article}
\usepackage{fontspec}
\setmainfont[LetterSpace=40]{EB Garamond}
\begin{document}
% No swashes, correct letterspacing:
\emph{ANAGRAMME.}

% Two swashes, incorrect letterspacing:
\emph{\addfontfeature{RawFeature=+swsh}A\addfontfeature{RawFeature=-swsh}NA\addfontfeature{RawFeature=+swsh}G\addfontfeature{RawFeature=-swsh}RAMME.}
\end{document}

示例代码的输出

我怎样才能使花饰字形周围的字母间距保持一致?

答案1

字母间距无法跨字体变化起作用。您必须使用显式字距模拟它。由于字体为 12pt,因此LetterSpacing=40相当于在字母之间添加 4.8pt 字距。

\documentclass[12pt]{article}
\usepackage{fontspec}
\setmainfont[LetterSpace=40]{EB Garamond}
\begin{document}
% No swashes
\emph{ANAGRAMME}

% Two swashes
\emph{\addfontfeature{RawFeature=+swsh}A\kern4.8pt
  \addfontfeature{RawFeature=-swsh}NA\kern4.8pt
  \addfontfeature{RawFeature=+swsh}G\kern4.8pt
  \addfontfeature{RawFeature=-swsh}RAMME}
\end{document}

在此处输入图片描述

相关内容