这是为了回答这个问题. 另一方面,也许可以使用电子表格或更好的\href
选项来改进它。
想法是首先创建一个包含子表的 PDF 文件。
\documentclass[multi=subtable]{standalone}
\usepackage{siunitx}
\usepackage{hyperref}
\newenvironment{subtable}[2]% #1 = target name, #2 = tabular columns
{\hypertarget{#1}\bgroup\begin{tabular}{#2}}% body goes here
{\end{tabular}\egroup}
\begin{document}
\begin{subtable}{first}{S|S}
\multicolumn{2}{c}{First}\\
{x} & {y}\\
\hline
1.0 & 3.2\\
1.5 & 2.9
\end{subtable}
\begin{subtable}{second}{S|S}
\multicolumn{2}{c}{Second}\\
{x} & {y}\\
\hline
1.0 & 3.2\\
1.5 & 2.9
\end{subtable}
\end{document}
然后使用\href
将此文件 (test6.pdf) 链接到主文档。请注意使用\#
添加锚点。
\documentclass{article}
\usepackage[colorlinks]{hyperref}
\begin{document}
\begin{table}
\belowcaptionskip=\abovecaptionskip
\abovecaptionskip=0pt
\caption{Main Table - click entries}
\centering
\begin{tabular}{cc}
&\href[pdfnewwindow]{test6.pdf\#first}{First} \\% note {first} is the target name
\href[pdfnewwindow]{test6.pdf\#second}{Second}
\end{tabular}
\end{table}
\end{document}
请注意,每个子表都会启动一个新的 PDF 查看器,因此您可以通过关闭页面来返回。
答案1
这是一个将所有子表放入附录的版本,仅使用\label
和\ref
。 假设实际的子表会更大,并且可能每个子表都需要一整页。 选择 [hp] 是因为一页上可以容纳多少个 [p] 浮点数没有限制,但也希望在部分的第一页上有一些。
\documentclass{article}
\usepackage{siunitx}
\usepackage{subcaption}
\usepackage[colorlinks]{hyperref}
\DeclareCaptionLabelFormat{linked}{Subtable \ref{main}#2}
\begin{document}
\tableofcontents
\section{Table goes in main text}
\begin{table}[ht]
\caption{Main Table}\label{main}
\centering
\begin{tabular}{cc}
& See \ref{first}\\
See \ref{second}&
\end{tabular}
\end{table}
\clearpage
\appendix
\section[Subtables for Table \ref*{main}]{Subtables for Table \ref{main}}
\begingroup
\renewcommand{\thetable}{\ref*{main}}%
\renewcommand{\thesubtable}{.\arabic{subtable}}%
\captionsetup[subtable]{labelformat=linked}%
\setcounter{subtable}{0}% not automatic
\begin{table}[hp]
\captionof{subtable}{}\label{first}
\centering
\begin{tabular}{S|S}
{x} & {y}\\
\hline
1.0 & 3.2\\
1.5 & 2.9
\end{tabular}
\end{table}
\begin{table}[hp]
\captionof{subtable}{}\label{second}
\centering
\begin{tabular}{S|S}
{x} & {y}\\
\hline
1.0 & 3.2\\
1.5 & 2.9
\end{tabular}
\end{table}
\endgroup% restore table subcaptions
\end{document}