我有以下 MWE。
\documentclass[12pt, a4paper]{report}
\usepackage[hidelinks]{hyperref}
\usepackage[all]{hypcap}
\begin{document}
As seen in Table \ref{table1} and \ref{table2}.
\begin{table}
\centering
\begin{tabular}{ l | c || r }
\hline
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9 \\
\hline
\end{tabular}
\caption{Table 1}
\label{table1}
\begin{tabular}{ l | c || r }
\hline
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9 \\
\hline
\end{tabular}
\caption{Table 2}
\label{table2}
\end{table}
\end{document}
我在一个表中定义了两个“表格”,这是我的要求。我使用该hyperref
包来获得指向表的可点击链接。我还在\usepackage[all]{hypcap}
premable 中使用它,这样在单击链接时,页面会滚动到表的顶部而不是标题。但是,单击表 2 的链接时,页面会滚动到标题。我怀疑发生这种情况是因为我将两个表组合在一起。
我该怎么做?只要表格保持分组,我接受任何解决方法。我也想将其用于数字。
谢谢,
答案1
第一个\capstart
是自动设置table
的\usepackage[all]{hypcap}
。但是第二个\capstart
需要\caption
手动放置:
\documentclass[12pt, a4paper]{report}
\usepackage[hidelinks]{hyperref}
\usepackage[all]{hypcap}
\begin{document}
As seen in Table \ref{table1} and \ref{table2}.
\begin{table}
\centering
\begin{tabular}{ l | c || r }
\hline
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9 \\
\hline
\end{tabular}
\caption{Table 1}
\label{table1}
\bigskip
\capstart
\begin{tabular}{ l | c || r }
\hline
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9 \\
\hline
\end{tabular}
\caption{Table 2}
\label{table2}
\end{table}
\end{document}
(带\usepackage[a6paper]{geometry}
小图的图像。)
答案2
这对我有用,但它违反了表中有表的假设,但我认为结果是一样的:
\documentclass[12pt, a4paper]{report}
\usepackage[hidelinks]{hyperref}
\usepackage[all]{hypcap}
\begin{document}
As seen in Table \ref{table1} and \ref{table2}.
\begin{table}
\centering
\begin{tabular}{ l | c || r }
\hline
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9 \\
\hline
\end{tabular}
\caption{Table 1}
\label{table1}
\end{table}
\begin{table}
\centering
\begin{tabular}{ l | c || r }
\hline
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9 \\
\hline
\end{tabular}
\caption{Table 2}
\label{table2}
\end{table}
\end{document}