我想在表格中添加多个脚注。如何才能最好地实现这一点?

我想在表格中添加多个脚注。如何才能最好地实现这一点?

我想在表格中添加多个脚注。但是当我到达第一个脚注时,脚注计数器已经增加太多次了\footnotetext。如何才能让这个功能正常工作?

\documentclass{article}

\begin{document}

\ \vfill\

\begin{tabular}{|r|l|}
\hline
First & footnote.\footnotemark  \\ 
Second & footnote.\footnotemark   \\ 
Third & footnote.\footnotemark  \\ 
\hline
\end{tabular}

\footnotetext{First}  \footnotetext{Second} \footnotetext{Third}

Fourth footnote.\footnote{Four}

\

\end{document}

在此处输入图片描述

答案1

确实\footnotemark会增加计数器的值,但是在使用footnote时会不同步。\footnotetext

必须重置footnote计数器环境tabular对国家。这可以手动完成,但如果值发生变化,或者使用虚拟计数器完成,可能会变得乏味,该计数器保存footnote之前的计数器tabular,然后恢复为之后​​的原始数字tabular(这里使用包中的\AtBeginEnvironment\AfterEndEnvironment命令完成。etoolbox

但是,\footnotetext不会增加footnote。请使用pretocmd-- 方法或使用包装器宏\myfootnotetext来自动执行此步骤。(或者手动执行。)

\documentclass{article}


\newcommand{\myfootnotetext}[1]{%
\stepcounter{footnote}\footnotetext{#1}%
}

\newcounter{dummycounter}

\usepackage{etoolbox}

\AtBeginEnvironment{tabular}{%
  \setcounter{dummycounter}{\value{footnote}}%
}

\AfterEndEnvironment{tabular}{%
  \setcounter{footnote}{\value{dummycounter}}%
}


\begin{document}


\begin{tabular}{|r|l|}
\hline
First & footnote.\footnotemark  \\ 
Second & footnote.\footnotemark   \\ 
Third & footnote.\footnotemark  \\ 
\hline
\end{tabular}
\myfootnotetext{First}
  \myfootnotetext{Second} \myfootnotetext{Third}

Fourth footnote.\footnote{Four}

%\

\end{document}

在此处输入图片描述

答案2

如果您想考虑使用table环境,该tablefootnote包可以解决您的问题:

\documentclass[colorlinks]{article}%

\usepackage{footnotebackref}
\usepackage{tablefootnote}

\begin{document}
\mbox{}\vfill
A first footnote\footnote{First}

\begin{table}[htbp]
  \renewcommand\arraystretch{1.5}
  \begin{tabular}{|r|l|}
    \hline
    First & footnote.\tablefootnote{Second} \\
    Second & footnote.\tablefootnote{Third} \\
    Third & footnote.\tablefootnote{Fourth} \\
    \hline
  \end{tabular}
\end{table}

Fifth footnote.\footnote{Fifth}

\end{document} 

在此处输入图片描述

相关内容