系统中的行距

系统中的行距

我正在处理一个文档,需要增加文本行之间的间距,但我想保持数组或系统中的行间距不变。我尝试使用baselinestretch大于 的值的命令1,例如4,但这也会影响数组中的间距。为了解决这个问题,我设置arraystretch0.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 构造。\baselineskiparraystretch

包中没有实现任何方法,但一个简单的补丁就可以了。这里我使用了一个不太明显的扩展因子。

\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}

在此处输入图片描述

相关内容