我刚刚开始使用 Latex 进行写作,并且正在努力解决可能只是一个简单的格式问题。
本质上,我想要的是左方括号与数组中 -a 后的逗号对齐 - 如下图所示。
我的当前代码(未经过对齐)已包含在下面。
\begin{align}
\left (\left. \frac{t^{2}}{5x} \right| \begin{array}{ll} 0 \\ - a,\lambda+K,\lambda -\frac{1}{18}K \\\end{array} \right)
\\ \notag \ \left[t>0, \quad 0<\lambda \right]
\end{align}
这将产生以下内容:
如您所见,左方括号没有与上面的逗号对齐。
有人知道如何修复这个问题吗?我怀疑这是一个相当琐碎的问题,但我似乎无法在网上找到任何有用的信息。
答案1
这是一个继续使用align
环境的解决方案;它\hphantom
在第二行的开始处使用(“水平幻影”)来实现所需的水平间距偏移。
在第一行,我建议对代码做一些调整:(a)用于\;\middle|\;
获取适当间距的垂直调节条,(b)更改环境的设置array
以反映它只包含一列的事实,以及(c)抑制通常插入在环境左侧和右侧边缘的空白array
。
\documentclass{article}
\usepackage{amsmath} % for "align*" environment
\begin{document}
\begin{align*}
&\left( \frac{t^{2}}{5x} \;\middle|\;
\begin{array}{@{}l@{}} 0 \\ -a,\lambda+K,\lambda -\frac{1}{18}K \end{array} \right) \\
&\hphantom{\left( \frac{t^{2}}{5x} \;\middle|\; -a\right.}
[t>0, \quad 0<\lambda ]
\end{align*}
\end{document}
答案2
您可以使用以下包以简单的方式完成此操作blkarray
:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{blkarray, multirow}
\usepackage{mathtools}
\begin{document}
\[ \begin{blockarray}{cl@{}l}
\begin{block}{(\BAmultirow{1em}|l@{}l)}%
$ \dfrac{t^{2}}{5x} $ & 0 & \\
& -a & ,\lambda+K,\lambda -\frac{1}{18}K\\
\end{block}\noalign{\vskip 1.5ex}
& &\left[t>0, \quad 0<\lambda \right]
\end{blockarray} \]
\end{document}
答案3
我不知道垂直间距有多重要,所以我保留了你的原始代码,垂直校正只是一个建议。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
\left (\left. \frac{t^{2}}{5x} \right| \begin{array}{ll} 0 \\ - a,\lambda+K,\lambda -\frac{1}{18}K \\\end{array} \right)
\\ \notag \ \left[t>0, \quad 0<\lambda \right]
\end{align}
\newlength{\arrcs}
\setlength{\arrcs}{2\arraycolsep}
\begin{align}
&\left (\left. \frac{t^{2}}{5x} \right| \begin{array}{ll} 0 \\ - a,\lambda+K,\lambda -\frac{1}{18}K \\\end{array} \right) \\[-6pt]
%\\ \notag \ \left[t>0, \quad 0<\lambda \right]
&\phantom{\Biggl(5x -a,\hspace{\arrcs} }[t>0, \quad 0<\lambda]\notag
\end{align}
\end{document}