虽然我知道超链接不支持脚注,我引用:
hyperfootnotes boolean true
将脚注标记变成脚注文本的超链接。容易被破坏……
我想知道是否有人找到了类似以下方法的解决方法:
\documentclass{article}
\usepackage[stable,perpage,multiple,bottom]{footmisc}
\usepackage[hyperfootnotes=true]{hyperref}
\usepackage{footnotebackref} % connect note back to table
\usepackage{longtable}
\usepackage{blindtext}
\begin{document}
\blindtext
\newpage
\blindtext
\begin{longtable}{c c p{3cm} c}
& centered \footnote{Here's a note from a
centered column} & \\
& & paragraph \footnote{This note is } & \\
\end{longtable}
\end{document}
这使
在这里,我们可以看到居中列的注释按预期工作(即,单击脚注标签会将用户带到脚注,然后他们可以单击这标签并返回到表格),而段落格式的列则不太好用(它会将用户带回到文档顶部)。我正在使用脚注返回参考回到桌子,但这种行为不是必需的......
\usepackage{}
(我经过多次尝试解决这个问题后,使用了上面的 s - 这似乎是我能想到的最接近的办法了)。
我之所以问这个问题,是因为我有一个跨越多页的表格,如果段落格式的列可以超链接到同一页的脚注,效果会更好。
或者目前这是不可能的?
答案1
需要做一些额外的工作,以便所使用的相应标签footnotebackref
在被调用时仍然可用。以下方法似乎有效:
\documentclass{article}
\usepackage{longtable}
\usepackage{array}
\usepackage{hyperref}
\usepackage{footnotebackref}
\usepackage{etoolbox}
\patchcmd{\footnote}{\edef}{\xdef}{}{\errmessage{failed to patch}}
\makeatletter
\renewcommand\@makefntext[1]{%
\edef\@makefnmark{%
\noexpand\mbox{\noexpand\textsuperscript{\noexpand\normalfont%
\noexpand\hyperref[\BackrefFootnoteTag]{\noexpand\@thefnmark}}}\noexpand\,}%
\BHFN@OldMakefntext{#1}}%
\makeatother
\begin{document}
\begin{longtable}{
c
>{\raggedright}p{3cm}
}
% start of table cells:
centered \footnote{Here's a note from a
centered column} \tabularnewline
& paragraph \footnote{This note is from paragraph } \tabularnewline
\end{longtable}
\end{document}
答案2
@David Carlisle 一如既往地正确,但看起来它们footnotebackref
配合longtable
得并不好。下面是一个最小示例,它实现了我最初希望的行为。
\documentclass{article}
\usepackage{longtable}
\usepackage{array}
%\usepackage{footnotebackref}
\usepackage{hyperref}
\begin{document}
\begin{longtable}{
c
>{\raggedright}p{3cm}
}
% start of table cells:
centered \footnote{Here's a note from a
centered column} \tabularnewline
& paragraph \footnote{This note is from paragraph } \tabularnewline
\end{longtable}
\end{document}
给予(抱歉质量不佳)
最好能将footnote
链接返回,longtable
因此暂时将这个链接保持打开状态,以防万一有办法做到这一点。