在以下公式中,我想更改渲染,使“case”括号的下端看起来好像没有下括号。这可能吗?我已经尝试过\smash
并否定了\vspace
s,但无济于事。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\newcommand\terma{\left( 1\!-\!e^{\frac{-\lambda_2^2}{2\alpha^2\lambda_3^2}}\right)}
\newcommand\termb{e^{\frac{-\lambda_1^2}{2\beta^2|\lambda_2\lambda_3|}}}
\newcommand\termc{\left( 1-e^{\frac{-\sum_i\lambda_i^2}{2c^2}}\right)}
\[
\mathcal V(\sigma)=
\begin{cases}
0 & \text{if $\lambda_2>0$ or $\lambda_3>0$,}\\
\underbrace{\terma}_{A}
\underbrace{\termb\vphantom{\terma}}_{B}
\underbrace{\termc\vphantom{\terma}}_{C}
&\text{else}.
\end{cases}
\]
\end{document}
答案1
\smash
您可以使用和的组合\vphantom
来获得所需的效果。首先,我们需要使用 a\smash
来“展平”内容。然后我们使用 a\vphantom
将括号调整到仅适合术语而非下括号的正确高度。最后,我们需要添加一个附加项,\vphantom
以便为整个表达式提供正确的高度,这样后面的文本就不会叠加在其上。总而言之,代码如下所示:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\newcommand\terma{\left( 1\!-\!e^{\frac{-\lambda_2^2}{2\alpha^2\lambda_3^2}}\right)}
\newcommand\termb{e^{\frac{-\lambda_1^2}{2\beta^2|\lambda_2\lambda_3|}}}
\newcommand\termc{\left( 1-e^{\frac{-\sum_i\lambda_i^2}{2c^2}}\right)}
\[
\mathcal V(\sigma)=
\begin{cases}
0 & \text{if $\lambda_2>0$ or $\lambda_3>0$,}\\
\vphantom{\terma}
\smash{\underbrace{\terma}_{A}}
\smash{\underbrace{\termb\vphantom{\terma}}_{B}}
\smash{\underbrace{\termc\vphantom{\terma}}_{C}}
&\text{else}.
\end{cases}
\vphantom{\begin{cases}
0 & \text{if $\lambda_2>0$ or $\lambda_3>0$,}\\
\underbrace{\terma}_{A}
\underbrace{\termb\vphantom{\terma}}_{B}
\underbrace{\termc\vphantom{\terma}}_{C}
&\text{else}.
\end{cases}}
\]
\end{document}
结果如下: