我读到过,LaTeX 文档中的行距由\baselinestretch
宏控制,例如这里。\baselinestretch
序言中的设置确实会改变行距。\baselinestretch
但是当我在文档内部重新定义时,行距不受影响。
显然可以在文档中间更改行距,因为证明通过setspace
包,但是为什么简单地重新定义\baselinestretch
不能做到这一点?
举个例子,我希望下面的代码中有一个 lorem ipsum 段落,行距为 1.5 倍,后面跟着一个同一段,行距为 1.0 倍,但结果两段都是 1.5 倍行距。
\documentclass{article}
\usepackage{lipsum}
\def\baselinestretch{1.5}
\begin{document}
\lipsum[1]
\hrule
\def\baselinestretch{1}
\lipsum[1]
\end{document}
答案1
\baselinestretch
只是设置下一次字体选择时使用的乘数,因此您需要\selectfont
。
\documentclass{article}
\usepackage{lipsum}
\def\baselinestretch{1.5}
\begin{document}
\lipsum[1]
\hrule
\def\baselinestretch{1}\selectfont
\lipsum[1]
\end{document}