使用 lualatex 为文本块(使用特定字体)设置负行距

使用 lualatex 为文本块(使用特定字体)设置负行距

我正在quote环境中排版一段代表手写信件的文本。

我正在使用 lualatex,并且为文本的这个特殊部分提供了特定的字体。现在,使用 fontspec,我定义了一个环境来实现所需的功能:

\newfontfamily\finob{TheActualFont}[%
Ligatures={TeX,Historic},
Variant=3]
\newenvironment{itaquote}{%
\begin{quote}\finob}
{%
\end{quote}
}

问题是,行距应该减小,在这种环境下可能设置为负数,因为看起来不太好。该怎么做?谢谢

答案1

你可以使用

 ...\begin{quote}\linespread{0.9}\finob} ...

将基线间距减小到环境中先前值的 90%,但是,如果将其减小得太多(小于字体中字符实际占用的空间),则 TeX 将不会保持相等的间距,并且带有降部或大写字母或重音字母等的行将比没有的行占用更多的垂直空间,这通常看起来很糟糕。

在此处输入图片描述

\documentclass{article}

\setlength\textwidth{3cm}

\begin{document}

\linespread{.2}\selectfont

One two thee four five six Seven eight nine ten.
One two thee four five six Seven eight nine ten.
One two thee four five six Seven eight nine ten.
One two thee four five six Seven eight nine ten.
One two thee four five six Seven eight nine ten.
One two thee four five six Seven eight nine ten.

\end{document}

相关内容