我想让\sum
和\prod
符号比通常略小一些。有几个相关问题,但没有一个能完全满足我的需要。我不希望它们像\scriptsize
或更小;此外,我希望 textstyle 和 displaystyle 中的限制与原来一样(即,在数学模式下上下;在内联时在 $\sum$ 和 $\prod$ 旁边)。我尝试了很多方法,但都无法得到我想要的。一个(我承认相当无用的)MWE 将是:
\documentclass{article}
\let\oldsum\sum
\renewcommand{\sum}{\oldsum}
\let\oldprod\prod
\renewcommand{\prod}{\oldprod}
\begin{document}
\begin{equation}
\sum \prod
\end{equation}
\end{document}
我怎样才能调整 sum 和 prod 的大小并保持其通常的限制?提前感谢大家的时间。
答案1
以下是兼容的解决方案amsmath
:
\documentclass{article}
\usepackage{amsmath}
\usepackage{etoolbox}
\makeatletter
\newcommand{\changeoperator}[1]{%
\csletcs{#1@saved}{#1@}%
\csdef{#1@}{\changed@operator{#1}}%
}
\newcommand{\changed@operator}[1]{%
\mathop{%
\mathchoice{\textstyle\csuse{#1@saved}}
{\csuse{#1@saved}}
{\csuse{#1@saved}}
{\csuse{#1@saved}}%
}%
}
\makeatother
\changeoperator{sum}
\changeoperator{prod}
\begin{document}
Display style: $\displaystyle \sum_{k=1}^n a_k+\prod_{k=1}^n b_k$
\bigskip
Text style: $\sum_{k=1}^n a_k+\prod_{k=1}^n b_k$
\bigskip
Script style: $\scriptstyle \sum_{k=1}^n a_k+\prod_{k=1}^n b_k$
\bigskip
Scriptscript style: $\scriptscriptstyle \sum_{k=1}^n a_k+\prod_{k=1}^n b_k$
\end{document}