答案1
在这里调整我的答案,使用 MnSymbols 的标准 AMS-Sum 运算符?,对于mathptmx
,您可以使用任一字体的求和运算符(\sum
mathptmx 和\Xsum
computer modern),同时保留底层mathptmx
数学字体。
\documentclass{article}
\usepackage{mathptmx,mathtools}
% =============================================
%Import symbols from font cmex without importing the whole package
% =============================================
\DeclareFontFamily{U} {cmex}{}
\DeclareFontShape{U}{cmex}{m}{n}{
<-6> cmex5
<6-7> cmex6
<7-8> cmex7
<8-9> cmex8
<9-10> cmex9
<10-12> cmex10
<12-> cmex12}{}
\DeclareSymbolFont{Xcmex} {U} {cmex}{m}{n}
%\DeclareMathSymbol{\Xdsum}{\mathop}{Xcmex}{88}% LaTeX can find displaystyle
\DeclareMathSymbol{\Xsum}{\mathop}{Xcmex}{80}
% =============================================
%\usepackage{fonttable}
\begin{document}
\centering
sum under mathptmx:\par
$\sum_{i=1}^2 x_i $
\[\sum_{i=1}^2 x_i \]
Defined Xsum from cmex:\par
$\Xsum_{i=1}^2 x_i $
\[\Xsum_{i=1}^2 x_i \]
%\tiny\fonttable{cmex8}
\end{document}
如果取消注释与 MWE 相关的两行fonttable
,就会看到计算机现代数学扩展字体表,其中显示第 80 和 88 个插槽处的文本和显示样式总和符号,这反映在我的\DeclareMathSymbol
声明中。
答案2
我之所以回答这个问题,是因为它不适合评论:\mathchoice
机器是不必要的,因为它所针对的功能已经在“机器级别”内置到 TeX 中。请参阅TeXbook,附录G,规则13(第443页跨越最后两行的句子)。
\documentclass{article}
\usepackage{mathptmx}
% \usepackage{mathtools} % unrelated to the problem, but...
\usepackage{amsfonts} % ... apparently this line is superfluous if the
% "mathtools" package is loaded.
% No need to re-declare the cmex fonts under a different encoding:
%
% \DeclareFontFamily{U} {cmex}{}
%
% \DeclareFontShape{U}{cmex}{m}{n}{
% <-7.5> cmex7
% <7.5-8.5> cmex8
% <8.5-9.5> cmex9
% <9.5-> cmex10
% }{}
\DeclareSymbolFont{Xlargesymbols}{OMX}{cmex}{m}{n}
\DeclareMathSymbol{\Xsum}{\mathop}{Xlargesymbols}{80}
\begin{document}
Sum under \texttt{mathptmx}: \( \sum_{i=1}^2 x_i \).
Now displayed:\[\sum_{i=1}^2 x_i \]
Defined \verb|\Xsum| from \texttt{cmex}: \( \Xsum_{i=1}^2 x_i \).
Now displayed:\[\Xsum_{i=1}^2 x_i \]
\footnotesize
Repeat in \verb|\footnotesize|.
Sum under \texttt{mathptmx}: \( \sum_{i=1}^2 x_i \).
Now displayed:\[\sum_{i=1}^2 x_i \]
Defined \verb|\Xsum| from \texttt{cmex}: \( \Xsum_{i=1}^2 x_i \).
Now displayed:\[\Xsum_{i=1}^2 x_i \]
\end{document}
这是输出: