根据 displaystyle 进行条件判断

根据 displaystyle 进行条件判断

我正在尝试编写一个宏,根据它是在显示方程中使用还是在内联方程中使用,它会返回不同的东西。我假设是这样的:

\newcommand{\foo}{%
    \ifdisplaystyle
        This equation is displayed!
    \else
        This equation is inline!
    \fi}

我认为有办法做到这一点,因为$\sum$$$\sum$$看起来不同。怎么做到的?

答案1

您可以使用\mathchoice按以下方式进行调节:

\mathchoice
  {<display style>}
  {<text style>}
  {<script style>}
  {<script-script style>}

辨别各个样式中显示的内容。以下是示例:

在此处输入图片描述

\documentclass{article}

\newcommand{\foo}{{%
  \mathchoice
    {D} % \displaystyle
    {T} % \textstyle
    {S} % \scriptstyle
    {s} % \scriptscriptstyle
}}

\begin{document}

See $\foo^{\foo^{\foo}}$. Also see
\[
  \foo^{\foo^{\foo}}
  \quad \mbox{and} \quad
  \textstyle \foo_{\foo_{\foo}}
\]

\end{document} 

相关内容