我正在使用模板撰写论文,但函数出现了问题\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