\textsuperscript 不起作用

\textsuperscript 不起作用

我正在使用模板撰写论文,但函数出现了问题\textsuperscript。不知什么原因,它不起作用,而是写出了“germanb”。

我的意思是,如果我用乳胶书写,10\textsuperscript{2} km\textsuperscript{2}处理后的文本将显示“10germanb2 kmgermanb2”。

有人见过这种情况吗?有解决方案或其他命令吗?我不想将所有上标都改为方程式。

答案1

这个文件

\documentclass{article}

\usepackage[german]{babel}

\renewcommand\textsuperscript{\tmpa}

\begin{document}

10\textsuperscript{2} km\textsuperscript{2}

\end{document}

产生所示的输出:

在此处输入图片描述

在您的情况下,错误的行可能不是那么明显,而是隐藏在包中,但您可以通过添加如下行来调试:

\typeout{1: \meaning\textsuperscript}
\documentclass{article}
\typeout{2: \meaning\textsuperscript}
\usepackage[german]{babel}
\typeout{3: \meaning\textsuperscript}
\renewcommand\textsuperscript{\tmpa}
\typeout{4: \meaning\textsuperscript}

\begin{document}

\typeout{5: \meaning\textsuperscript}
10\textsuperscript{2} km\textsuperscript{2}

\end{document}

这会产生相同的排版输出,但终端和日志显示:

1: macro:->\protect \textsuperscript  
2: macro:->\protect \textsuperscript  
3: macro:->\protect \textsuperscript  
4: \long macro:->\tmpa 

这清楚地表明\textsuperscript第 3 和第 4 次之间出了问题\typeout

相关内容