列表内的文本下括号

列表内的文本下括号

我使用下括号注释文本。但是,当我想要一个逐项列表时,涉及下括号的文本部分会尴尬地缩进项目符号点。有没有办法让它正常对齐(不缩进)。示例:

\documentclass[pdf]{beamer}
\usepackage{xcolor}
\usepackage{amsmath}

\makeatletter
\newcommand{\redub}{}
\def\redub#1{%
 \@ifnextchar_%
  {\@redub{#1}}
  {\@latex@warning{Missing argument for \string\redub}\@redub{#1}_{}}%
}
\def\@redub#1_#2{%
  \colorlet{currentcolor}{.}%
  \color{red}%
  \underbrace{\color{currentcolor}#1}_{\color{red}#2}%
  \color{currentcolor}%
}
\makeatother
\begin{document}
\begin{frame}
\begin{itemize}
  \item SAMPLE
  \item 
    \[
      \redub{\text{sample}}_{\mathclap{\text{sample}}}}{\text{sample}}
    \]
\end{itemize}
\end{frame}
\end{document}

因此,第一个项目符号下方的文本没有相对于项目符号缩进。第二个项目符号下方的文本缩进。我试图让它们对齐。

答案1

如果你不必展示等式,将其置于内联数学模式:

在此处输入图片描述

\documentclass{beamer}% http://ctan.org/pkg/beamer
\usepackage{xcolor,mathtools}% http://ctan.org/pkg/{xcolor,mathtools}

\makeatletter
\newcommand{\redub}{}
\def\redub#1{%
 \@ifnextchar_%
  {\@redub{#1}}
  {\@latex@warning{Missing argument for \string\redub}\@redub{#1}_{}}%
}
\def\@redub#1_#2{%
  \colorlet{currentcolor}{.}%
  \color{red}%
  \underbrace{\color{currentcolor}#1}_{\color{red}#2}%
  \color{currentcolor}%
}
\makeatother
\begin{document}
\begin{frame}
\begin{itemize}
  \item SAMPLE
  \item $\redub{\text{sample}}_{\mathclap{\text{sample}}}{\text{sample}}$
\end{itemize}
\end{frame}
\end{document}

请注意,你需要mathtools为了使用\mathclap-amsmath单独使用是不够的,但它会被加载mathtools

相关内容