我正在使用subfig
与凝缩乳胶类。不幸的是,我没能让它无错误地工作。正如在其他论坛上讨论的那样(参见这里),subfig 包会改变所有浮点的标题大小,这可以通过在加载包时使用选项来防止caption=false
。然而,这在某种程度上混淆了文档中的超链接,使得图形和表格引用链接到节标题而不是图形和表格。
以下是我遇到的问题的一个例子
\documentclass{tufte-book}
%\usepackage[caption=false]{subfig}
\usepackage{subfig}
\begin{document}
\chapter{A}
\section{This section}
If [caption = false] is used, the hyperrefs go to the section heather above, instead of going to Figure~\ref{testfig} or to Table~\ref{testtab}. If it is not used, the hyperrefs work, but the figure captions are printed with a bigger fontsize than they usually do.
\vspace{10cm}
\begin{figure}
\caption{This is the test figure}\label{testfig}
\end{figure}
\begin{table}
\caption{This is the test table}\label{testtab}
\end{table}
\end{document}
我知道这是一个细节,但我很好奇是否有解决方法。我不知道如何自己解决这个问题。
提前感谢你的帮助!
答案1
\phantomsection
一个简单的解决方法是在你有引用的浮点数开始时发出一个:
\begin{figure}
\phantomsection
% Other figure stuff
\caption{...}\label{..}
\end{figure}
或自动执行此过程全部图表使用etoolbox
:
\usepackage{etoolbox}% http://ctan.org/pkg/etoolbox
\AtBeginEnvironment{figure}{\phantomsection}
\AtBeginEnvironment{table}{\phantomsection}
上述“补丁”确保超级锚点位于相应浮点数的顶部;这是系统在 PDF 内准确跳转所必需\label
的\ref
。