如何将字符移至上标之下?

如何将字符移至上标之下?

我有一个数学符号,我想在上标的最后一个字符下写逗号。我有以下符号$T^{cpu}$,在哪里可以写,在 哪里 下u

我的代码,我无法左移,一个字符:

\documentclass[10pt,journal,compsoc]{IEEEtran}
\usepackage[table]{xcolor}
\begin{document}
$T^{cpu}$,
\end{document}

输出:

在此处输入图片描述

想要的输出,命令在正常基线上左移一个字符:

在此处输入图片描述

答案1

像这样的?(在了解到,(逗号)字符应该位于基线上并在文本模式下处理后,我更新了我的答案。)观察逗号向左移动 - 用印刷术语来说是“字距调整” - 其宽度与上标(“scriptstyle”)数学模式字母“u”的宽度完全相同。

在此处输入图片描述

\documentclass[10pt,journal,compsoc]{IEEEtran}
\newlength\mylen
\settowidth\mylen{$\scriptstyle u$} % measure width of math-mode 'u'

\begin{document}
$T^{cpu}$\kern-\mylen,
\end{document}

答案2

我只需使用\llap;\scriptspace即可避免逗号完全位于“u”下方。此外,还必须恢复空间因素。

我建议\mathit{cpu},因为这可能不是三个量的乘积。

\documentclass{article}

\newcommand{\ucomma}{%
  \leavevmode % for safety
  \llap{,}\spacefactor\sfcode`,
  \space
}

\begin{document}

$T^{\mathit{cpu}}$, text

$T^{\mathit{cpu}}$\ucomma text

$T^{cpu}$, text

$T^{cpu}$\ucomma text

\end{document}

在此处输入图片描述

答案3

这?

\documentclass[10pt,journal,compsoc]{IEEEtran}
\usepackage{amsmath}
\usepackage[table]{xcolor}
\begin{document}
    $T^{cp\underset{'}{u}}$
\end{document}

在此处输入图片描述

如果要将逗号放在与文本同一行,可以使用负空格。

\documentclass[10pt,journal,compsoc]{IEEEtran}
\usepackage{amsmath}
\usepackage[table]{xcolor}
\begin{document}
    $T^{cpu}$\hspace{-3pt}, text
\end{document}

在此处输入图片描述

答案4

我理解,原始问题并没有要求提高逗号,只是要求将其放在指数的最后一个字符下方。评论中的 Werner 的回答(下面的数字 2)效果很好。如果您想精确对齐,我想您可以使用右对齐的零宽度框(下面的数字 3)。

\documentclass[11pt]{article}
\begin{document}
\begin{enumerate}
\item $T^{cpu}$,
\item $T^{cpu}\!\!$,
\item $T^{cpu}$\makebox[0pt][r]{,}
\end{enumerate}
\end{document}

2 和 3 之间的差异相当小。

结果

相关内容