我需要一些具有以下要求的表格:
- 需要有宽度
\textwidth
; - 即使在自动分页符时,标题也必须位于表格顶部;
- 桌子不应该浮动;
- 表格中会有多个脚注;
- 同一个脚注会有多次引用;
- 参考文献应超链接到脚注;并且
- 脚注应位于页面底部
其他问题:
- 当我使用 时
\captionof{table}
,标题和表格会在分页符处分开。使用\newpage
before\captionof
也可以,但我必须手动执行此操作(我不太明白为什么将标题放在一页而将表格放在下一页比较好?) - 将其放置
tabularx
在表格环境中可以解决caption
问题,但是这会使表格浮动,而这并不是我想要的。 - 我希望脚注能引用
hyperref
。上标是可点击的,但只会让我跳转到首页。 tabularx
在 中包含 是minipage
可行的,但只能\footnote
在 中包含minipage
,这使得出现在页面中间\footnotes
之后。table
这是我的 MWE。
\documentclass[a4paper]{scrartcl}
\usepackage[colorlinks=true]{hyperref}
\usepackage{tabularx, multirow} % tabularx: auf Textbreite vergrößern
\newcolumntype{R}{>{\raggedleft\arraybackslash}X}
\begin{
\section{BLA}
\captionof{table}{table1}\label{tab:1}
\noindent\begin{tabularx}{\textwidth}{|X|R|}
\hline\rule{0pt}{14pt}\ignorespaces
\textbf{\large one} & \textbf{\large two}\\
\hline\rule{0pt}{11pt}\ignorespaces
three & four \footnotemark[3]
\\\hline\rule{0pt}{11pt}\ignorespaces
five & six \footnote{eight}
\\\hline\rule{0pt}{11pt}\ignorespaces
nine & ten \footnotemark[3]
\\\hline
\end{tabularx}
\footnotetext[3]{seven}
\end{document}
这里,脚注 3 尚未链接,而脚注 1 跳转到页面开头。
答案1
这里有一个应该能解决大多数问题的解决方案:我使用 包ltablex
,它是 的扩展longtable
。tabularx
因此标题不应该与表格主体分离,并且表格不会浮动。此外,komascript
有一个footref`` command that works with
hyperef`。因此,当脚注首先出现时添加标签就足够了。
但是,有一个缺点:您对R
列类型的定义在此上下文中不起作用。因此我使用了该 makecell
包:它允许通过其\makecell
命令定义各个单元格类型的对齐方式。此外,我还抑制了重复的不可见垂直规则,并使用命令调整了行的高度和深度\makegapedcells
。
\documentclass[a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{fourier, heuristica}
\usepackage[colorlinks=true]{hyperref}
\usepackage{array, ltablex, multirow} % tabularx: auf Textbreite vergrößern
\usepackage{makecell}
\setcellgapes{5pt}
\makegapedcells
\renewcommand\theadfont{\bfseries}
\renewcommand\cellalign{rc}
\begin{document}
\section{BLA}
Text text text text text text text text text text text text text text text text textt text text text text text text text text text text text text text text text text\footnote{A footnote in main text.}.
\begin{tabularx}{\textwidth}{|X|X|}
\caption{A Table}\label{tab:1}\\
\hline
\thead{\large one} & \thead{\large two}
\endfirsthead
\hline
three & \makecell{four\,\footnote{Seven.\label{fn:3}}} \\
\hline
five & \makecell{six\,\footnote{Eight.}} \\
\hline
nine & \makecell{ten\,\footref{fn:3}} \\
\hline
\end{tabularx}
%\end{center}
Text text text text text text text text text text text text text text text text textt text text text text text text text text text text text text text text text text\footnote{Another footnote in main text.}.
\end{document}