為什麼更改 \baselinestretch 不會改變行間距?

為什麼更改 \baselinestretch 不會改變行間距?

我讀過 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}

相關內容