删除数组左侧的空格

删除数组左侧的空格

我想将方程式一个接一个地显示出来,并在左侧添加一个大括号,array例如在环境中。但是,括号和方程式之间总是会有一个相应的空白:

上述示例的代码:

\documentclass{standalone}
\usepackage{amsmath,amssymb}

\begin{document}
\( \left\lbrace \begin{array}{l} x^2 + y^2 = R \\ x>0 \end{array} \right. \)
\end{document} 

有没有办法去除上述空白?

提前致谢

答案1

环境在数组的两边{array}添加相等的长度。在 的文档中,您可以阅读:\arraycolsepamsmath

数组在每一侧添加的 \arraycolsep 的额外空间是一种浪费,因此我们在 [在 {matrix} 中] 将其删除(也许我们应该将其从数组中删除,但这是一项更艰巨的任务)。

为了删除这些空格,您必须添加@{}前导码以将 替换\arraycolsep为空({}中的@{})。

\documentclass{standalone}
\usepackage{amsmath,amssymb}

\begin{document}
\( \left\lbrace \begin{array}{@{}l@{}} x^2 + y^2 = R \\ x>0 \end{array} \right. \)
\end{document} 

上述代码的结果

答案2

正如@Bernard 在评论中所建议的,您可以使用cases来自的环境。或者,您可以通过将其放置在中指定的列之前来amsmath减少括号和方程式之间的间距。@{}larray

\documentclass{article}
\usepackage{amsmath,amssymb}

\begin{document}
Original: \( \left\lbrace \begin{array}{l} x^2 + y^2 = R \\ x>0 \end{array} \right. \)

With \verb|cases|: \( \begin{cases} x^2 + y^2 = R \\ x>0 \end{cases} \)

Reducing space: \( \left\lbrace \begin{array}{@{}l} x^2 + y^2 = R \\ x>0 \end{array} \right. \)
\end{document}

在第三个示例中,您还可以根据需要调整间距,因为 会将@{}括号之间的内容放置在数组每一行的该位置。因此,例如,可以@{}通过替换@{\,}或来添加空格。@{\;}

相关内容