哪种换行参数的选择可以得到最少的行数

哪种换行参数的选择可以得到最少的行数

有时,你并不关心 TeX 换行算法的“美观性”,而只是想要文档中多出一两行。当遇到这种情况时,我会~在适当的地方开始添加,并希望 TeX 能找到使用较少行数的换行。而且通常确实如此!

TeX 换行参数的值是否会导致结果偏向于(对齐)段落中的行数较少。请注意,我已经使用了悬挂标点符号。

答案1

TeX 按主题分类(部分19.1.4 段落的行数,第 178 页):

用户可以通过参数强制偏离最佳行数(即由将段落分成行的最佳方式产生的行数)\looseness。此参数在每次清除形状参数时都会重置(请参阅第 18 章),表示当前段落应比最佳行数长多少行。负值将\looseness尝试使段落缩短行数,该行数是参数的绝对值。

TeX在受 的影响而延长或缩短段落时仍会观察\pretolerance和的值(见下文) 。因此,TeX 只会在不超过这些参数的情况下尽可能延长或缩短段落。\tolerance\looseness

实际操作中的示例(并且可以调整行数):

enter image description here

\documentclass{article}
\usepackage{geometry,lipsum}
\geometry{margin=1in}% Just for this example
\begin{document}
\lipsum[1]

\looseness=-1% Try one fewer line for the following paragraph
\lipsum[1]
\end{document}

答案2

我认为这个问题没有绝对的答案。你可以调整几个选项,而且对于你可以调整多少个单词间空间,没有明显的限制,直到它变得荒谬为止。

也就是说,你可以直接告诉 TeX 你想让某个段落比\looseness=-1该段落短一行:

\documentclass{article}
\usepackage[american]{babel}
\usepackage{blindtext}
\usepackage{lineno}             % just to see the effect

\begin{document}

\section{Normal}
\begin{linenumbers*}
  Here is an example.
  \blindtext
\end{linenumbers*}

\section{Tighter}
\begin{linenumbers*}
  \looseness=-1
  Here is an example.
  \blindtext
\end{linenumbers*}
\end{document}

(但是,不能保证 TeX 会因为你的要求而找到一种方法来做到这一点。)

相关内容