我正在處理一個文檔,需要增加文字行之間的間距,但我想保持數組或系統中的行間距不變。我嘗試過使用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}