我正在处理一个文档,需要增加文本行之间的间距,但我想保持数组或系统中的行间距不变。我尝试使用baselinestretch
大于 的值的命令1
,例如4
,但这也会影响数组中的间距。为了解决这个问题,我设置arraystretch
为0.25
,这将恢复数组中的标准间距。但是,我在使用该包时遇到一个问题systeme
——行间距仍然很高,我希望将其设置回正常(类似于数组)。
我怎样才能实现这个目标?
\documentclass{article}
\usepackage{systeme}
\renewcommand{\baselinestretch}{4}
\renewcommand{\arraystretch}{0.25}
\begin{document}
\systeme{x+y=0,2x-y=1}
\end{document}
答案1
该命令使用依赖于但不考虑\systeme
的低级 TeX 构造。\baselineskip
arraystretch
包中没有实现任何方法,但一个简单的补丁就可以了。这里我使用了一个不太明显的扩展因子。
\documentclass{article}
\usepackage{amsmath}
\usepackage{systeme}
\usepackage[nodisplayskipstretch]{setspace}
\usepackage{xpatch}
\usepackage{lipsum}
\setstretch{2}
\renewcommand{\arraystretch}{0.5}% actually, the reciprocal of the spread factor
\catcode`_=11
\xpatchcmd{\SYS_systeme_i}
{\begingroup}
{\begingroup\linespread{1}\selectfont}
{}{}
\catcode`_=8
\begin{document}
\lipsum[1][1-2]
\[
\begin{bmatrix}
1 & 0 \\
0 & 1
\end{bmatrix}
\]
\lipsum[2][1-2]
\[
\systeme{x+y=0,2x-y=1}
\]
\end{document}