我想打电话脚注 (不言自明的)方程式,所以我使用\footnotemark
和\footnotetext
,但脚注编号出错了。数字从 1 跳到 3(我想要 2),当我尝试 时addtocounter footnote -1
,它不再跳转,并且根本不增加。
为什么会这样?如何获得连续的数字?
分数维:
\documentclass[12pt]{report}
\usepackage{amsmath}
\begin{document}
$1^{st}$ footnote call\footnote{some footnote}.
\[a \xrightarrow{2^{nd}\footnotemark} a\]
\footnotetext{$\leftarrow$ this should be footnote 2}
\[a \xrightarrow{3^{rd}\footnotemark} a\]
\footnotetext{$\leftarrow$ this should be footnote 3}
\[a \xrightarrow{4^{th}\addtocounter{footnote}{-1}\footnotemark} a\]
\footnotetext{$\leftarrow$ following the pattern, I'd expect this to be 7 without fix, 6 once fixed. But 5??}
\end{document}
答案1
不要这样做。数学中的上标具有数学意义,而你用这样的脚注标记会让读者感到困惑。另请参阅https://tex.stackexchange.com/a/155481/2388。
除此之外:相当多的数学表达式被处理了不止一次,因此改变了计数器。在你的情况下,问题出在箭头上,所以你应该在它之前重置脚注计数器。
\documentclass[12pt]{report}
\usepackage{amsmath}
\begin{document}
$1^{st}$ footnote call\footnote{some footnote}.
\[a \addtocounter{footnote}{-1}\xrightarrow{2^{nd}\footnotemark} \]
\footnotetext{$\leftarrow$ this should be footnote 2}
\end{document}
答案2
善待你的读者,不在数学模式下给他们添加脚注。
只是为了证明这是可能的,它就在这里。
\documentclass[12pt]{report}
\usepackage{amsmath}
\makeatletter
\def\ext@arrow#1#2#3#4#5#6#7{%
\mathrel{\mathop{%
\let\mathfootnotemark\fake@footnotemark
\setbox\z@\hbox{#5\displaystyle}%
\setbox\tw@\vbox{\m@th
\hbox{$\scriptstyle\mkern#3mu{#6}\mkern#4mu$}%
\hbox{$\scriptstyle\mkern#3mu{#7}\mkern#4mu$}%
\copy\z@
}%
\hbox to\wd\tw@{\unhbox\z@}}%
\limits
\@ifnotempty{#7}{^{\if0#1\else\mkern#1mu\fi
#7\if0#2\else\mkern#2mu\fi}}%
\@ifnotempty{#6}{_{\if0#1\else\mkern#1mu\fi
#6\if0#2\else\mkern#2mu\fi}}}%
}
\newcommand{\mathfootnotemark}{%
\ifmeasuring@
\fake@footnotemark
\else
\footnotemark
\fi
}
\newcommand{\fake@footnotemark}{%
\textsuperscript{\the\numexpr\value{footnote}+1\relax}%
}
\makeatother
\begin{document}
$1^{st}$ footnote call\footnote{some footnote}.
\[a \xrightarrow{2^{nd}\mathfootnotemark} a\]
\footnotetext{$\leftarrow$ this should be footnote 2}%
text
\[a \xrightarrow{3^{rd}\mathfootnotemark} a\]
\footnotetext{$\leftarrow$ this should be footnote 3}%
text
\[a \xrightarrow{4^{th}\mathfootnotemark} a\]
\footnotetext{$\leftarrow$ this should be footnote 4}%
text
\begin{align}
a & \xrightarrow{5^{th}\mathfootnotemark} a \\
b & \xrightarrow{xxxx} b
\end{align}
\footnotetext{$\leftarrow$ this should be footnote 5}%
text
\end{document}