如何定义一个宏,比如\pretextsuperscript
,在文本模式下在单词前面添加一个上标?
简单地写\textsuperscript{2}hormone
和\textsuperscript{2}population
是不正确的。为什么说你可以看到
\usepackage{mathtools}
\begin{document}
$\prescript{2}{}{h}$ $\prescript{2}{}{p}$
\end{document}
处方(在前面的示例中为“2”)应与处方参数的首字母垂直对齐。此外,处方应为向上形状。我发现只能\prescript
在数学模式下使用。
答案1
文本模式
如果你希望\textpresuperscript
在文本模式下使用,那么
\newcommand{\textpresuperscript}[1]{%
\textsuperscript{#1}\nobreak\hspace{0pt}}
让你有机会写作
\textpresuperscript{2}longword
结果是“longword”可以连字符,但上标和下一个单词(第一个部分)之间不会有中断。以下是一个例子:
\parbox{4cm}{What's \textpresuperscript{2}supercalifragilisticexpialidocious?}
生产
数学模式
如果需要在前标中添加单词,则(mathtools
是必需的)
$\prescript{\text{word}}{}h$
应该是解决方案。如果单词应该保持直立形状,与公式外部的上下文无关,那么
$\prescript{\text{\normalfont word}}{}h$
就可以了。当然也可以定义自己的宏:
\newcommand{\pretextsuperscript}[1]{\prescript{\text{#1}}{}}
(可能添加\normalfont
)。