我有一个证明 (bussproof),它位于环境中center
,我将captionof
它放在里面,label
后面跟着一个。当我单击autoref
标签之一时,它会跳转到标题,但不会跳转到证明的顶部。
这是我的代码的概要:
\documentclass{article}
\usepackage{bussproofs}
\usepackage{hyperref}
\usepackage{caption}
\begin{document}
\begin{center}
\AxiomC{$A$}
\UnaryInfC{$B$}
\DisplayProof
\captionof{figure}{Proof sketch}
\label{fig:proof-schema}
\end{center}
\autoref{fig:proof-schema}
\end{document}
我尝试将captionof
和放在环境label
之外center
,但这并没有改变任何东西。如果我将放在captionof
证明前面,它会链接到标题,但标题会出现在证明之前。
答案1
包文档中提到了该行为caption
。当您使用命令时,\captionof
超链接锚点位于标题中,尽管hypcap
是true
。另一种方法是使用\captionsetup
和,\caption
如下所示:
\documentclass{article}
\usepackage{bussproofs}
\usepackage{hyperref}
\usepackage{caption}
\begin{document}
\begin{center}
\captionsetup{type=figure}
\AxiomC{$A$}
\UnaryInfC{$B$}
\DisplayProof
\caption{Proof sketch}
\label{fig:proof-schema}
\end{center}
\autoref{fig:proof-schema}
\end{document}
这个想法是用来\captionsetup
定义您想要的浮动环境类型。这会创建一个超链接锚点,因此最好在环境的开头(内容之前)使用它。然后,您可以使用\caption
而不是排版标题\captionof