當符號位於冒號 ( ) 等運算子\stackrel
旁邊時,我希望獲得使用 a 獲得的符號的一致間距。開箱即用,符號相對於運算子的間距減小了。\mathrel
:
\stackrel
微量元素:
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{mathtools}
\everymath{\displaystyle}
\begin{document}
\[\begin{array}{ll}
Hc
\\
H\stackrel{\triangledown}{c} &\text{ spacing increased}
\\
-
\\
H:c
\\
H:\stackrel{\triangledown}{c} &\text{ spacing reduced!}
\\
H\mathbin{:}\stackrel{\triangledown}{c} &\text{ with mathbin}
\]
\end{document}
將冒號變成數學箱也好不了多少,因為間距也不對稱。
或者,如果有比生成這些符號更好的方法(包括垂直定位)\stackrel
,歡迎這樣做。
答案1
你想要\overset
而不是\stackrel
(後者總是構成關係符號)。
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{mathtools}
%%%%%%%\everymath{\displaystyle}%%%% DON'T!!!!
\begin{document}
\[
\begin{array}{l}
Hc\\
H\overset{\triangledown}{c}
\\
H:c
\\
H:\overset{\triangledown}{c}
\end{array}
\]
\end{document}
另一方面,accents
做得更好。
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{mathtools}
\usepackage{accents}
%%%%%%%\everymath{\displaystyle}%%%% DON'T!!!!
\begin{document}
\[
\begin{array}{l}
Hc\\
H\accentset{\triangledown}{c}
\\
H:c
\\
H:\accentset{\triangledown}{c}
\end{array}
\]
\end{document}
不做\everymath{\displaystyle}
。