我已经学会使用\pretolerance
和,\tolerance
但有时 TeX 决定“压缩”段落中的断行文本,方法是在行上的单词之间使用较少的空间,我不喜欢这样。因此,如果上述命令指定了行的最大允许公差,那么指定最低限度容忍度——控制整个文档中的最小单词间距?
答案1
如果你希望单词间距永远不会缩小到“最佳”单词间距以下,那么
\spaceskip=\fontdimen2\font plus \fontdimen3\font\relax
就可以了。当然,这样的声明应该集成到每个字体更改命令中,可以通过将其添加到 来完成\selectfont
。
例子:
\documentclass{article}
\usepackage[latin]{babel} % for hyphenation
\usepackage{xpatch}
\usepackage{lipsum}
\frenchspacing % you don't really want extra space
\xapptocmd{\selectfont}
{\spaceskip=\fontdimen2\font plus \fontdimen3\font\relax}
{}{}
\begin{document}
\lipsum[2]
\Large
\lipsum[2]
\end{document}
您可以直接使用以单位表示的长度,而不是基于字体参数的长度em
,因为当时\spaceskip
已经选择了字体的设置。
答案2
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{libertine}
\usepackage{blindtext}
\begin{document}
\blindtext
\fontdimen2\font=2\fontdimen2\font % double interwordspace
\blindtext
\end{document}