stackrel 变量的上标和下标

stackrel 变量的上标和下标

我如何尝试在变量 omega 上方放置标签。这种方法效果很好,但我找不到更好的方法让 omega 本身的下标和上标之间没有间隙。使用 stackrel 本身的上标会将它们放置在太高的位置

\documentclass[]{scrreprt}

\usepackage{eurosym,bm,amsmath}     % Mathematische Notationen
\usepackage{scalerel}

\begin{document}

$\stackrel{\scaleto{f}{5pt}}{\omega}{}^{(i)}_{kl}$

\end{document}

在此处输入图片描述

答案1

像这样吗?

在此处输入图片描述

请注意使用\,(thinspace)将“f”上标向右轻推,以改善其在\omega字符上方的居中效果。

\documentclass{scrreprt}
\usepackage{amsmath}  % for \smash[t]{...} macro
\usepackage{scalerel} % for \stackrel macro
\begin{document}
$\smash[t]{\stackrel{\,\scaleto{f}{5pt}}{\omega}}^{(i)}_{kl}$
\end{document}

附录解决 OP 的后续问题:由于宏\lstmw只会在数学模式下遇到,我将其定义如下:

\newcommand{\lstmw}[3]{%
    \smash[t]{\stackrel{\scaleto{#2}{5pt}}{#1}}^{(i)}_{#3}}

并写入$\lstmw{\omega}{\,f}{kl}$文档正文中。

事实上,为了使上标项(此处f:)看起来不那么单薄和脆弱,我会将宏定义如下:

\newcommand{\lstmw}[3]{%
    \smash[t]{\stackrel{\scaleto{\scriptscriptstyle #2}{5pt}}{#1}}^{(i)}_{#3}}

这是“有效的”,因为 TeX 的数学字形是光学尺寸的,而不仅仅是“标准尺寸”字形的线性缩放版本。

答案2

命令accentset是另一种可能性。默认情况下,重音字母采用 scriptscriptstyle,但您可能有兴趣将其改为\scriptstyle

\documentclass{scrreprt}

\usepackage{accents}

\begin{document}

$ \accentset{\mkern2mu\scriptstyle f}{\omega}^{(i)}_{kl}\qquad \accentset{\mkern1mu f}{\omega}^{(i)}_{kl}$

\end{document} 

在此处输入图片描述

相关内容