我们如何在 LaTeX 中做到这一点?主要问题是将两行值作为上部索引。
答案1
没有任何包装:
\documentclass{article}
\begin{document}
$\mathrm{shaft}=20^{\begin{array}{@{}c@{}}
\scriptscriptstyle +0.080\\[-7pt]
\scriptscriptstyle +0.005
\end{array}}\mathrm{mm}$
\end{document}
答案2
有时我认为低级命令更好:
\documentclass{article}
\begin{document}
\[ \mathrm{shaft = 20^{+0.080\atop +0.005} mm} \]
\end{document}
如果你使用amsmath
,它会发出提示音,但确实可以编译。不过,有人说最好在 LaTeX 中使用更高级的宏,所以借用Gonzalo 对上一个问题的回答,人们可能会使用类似下面的方法amsmath
:
\documentclass{article}
\usepackage{amsmath}
\newcommand\scriptstack[2]{\genfrac{}{}{0pt}{}{#1}{#2}}
%\genfrac{<left-delim>}{<right-delim>}{<thickness>}{<mathstyle>}{<numerator>}{<denominator>}
\begin{document}
\[
\mathrm{shaft = 20^{\scriptstack{+0.080}{+0.005}} mm}
\]
\end{document}
答案3
尝试
\documentclass[12pt,preview,border=3mm]{standalone}
\usepackage{amsmath}
%---------------------------------------------------------------%
\begin{document}
\[\text{shaft} = 20^{\substack{+0.080\\+0.005}}\,\text{mm}\]
\end{document}
但这不是公差的标准符号。有关它,请参阅siunitx
包。编辑:如上所述Mico
,第三行出现一行的子堆栈并使\scriptscriptstyle
索引更小:
更正后的代码:
\documentclass[12pt,preview,border=3mm]{standalone}
\usepackage{amsmath}
%---------------------------------------------------------------%
\begin{document}
\[\text{shaft} = 20^{\substack{\scriptscriptstyle+0.080\\\scriptscriptstyle+0.005\\~}}\,\text{mm}\]
\end{document}
答案4
如果您想要产生与 OP 示例相同的垂直间距,您可以尝试该stackengine
包:
\documentclass[12pt,preview,border=3mm]{standalone}
\usepackage{amsmath}
\usepackage{stackengine}
\setstackEOL{\\}
\begin{document}
\[\text{shaft} = 20^{\,\setstackgap{L}{2ex}\everymath{\scriptscriptstyle}\Vectorstack{+0.080\\+0.005}}\,\text{mm}\]
\end{document}