我什么时候需要调用 \phantomsection?

我什么时候需要调用 \phantomsection?

受问题启发我什么时候需要手动调用 \clearpage?

我什么时候需要调用\phantomsection

什么情况下\phantomsection需要调用?

答案1

\phantomsection命令对于hyperref跳转到正确的页面是必不可少的,换句话说,它会在页面上放置一个超级标记。例如,添加到目录中的带星号的部分或章节通常会引用错误的位置,而无需\phantomsection

\chapter*{Extended Summary}
\phantomsection
\addcontentsline{toc}{chapter}{Extended Summary}%
\markboth{Extended Summary}{Extended Summary}%

我通常在序言中放入命令

\providecommand\phantomsection{}

然后,您的文档就可以编译了,无论是否hyperref出错

答案2

我对这个问题提供了不同的答案,因为原来的答案已经过时了。

需要该\phantomsection命令来创建指向文档中除图形、公式、表格、节、小节、章节等之外的位置的链接。

这通常与\addcontentsline或 和 一起\label使用\hyperref。例如,以下代码将创建内容行和指向文档中某处的链接。

\phantomsection
\addcontentsline{toc}{section}{Some place in the document}
\label{some}
This is just \hyperref[some]{some place} in the document.

如果没有此\phantomsection行,内容行和链接都会指向当前部分(或小节等)的开头。

在以前的版本中hyperref(2009-11-25 之前),您还必须使用\phantomsection未编号的章节(例如\section*)来防止链接指向上一章节。在最新发行版中,这已不再必要。

答案3

我发现以前的答案都不起作用,但下面的代码片段效果很好:

\newpage
\phantomsection \label{listoffig}
\addcontentsline{toc}{chapter}{List of Figures}
\listoffigures

最初发现于:http://sumanta679.wordpress.com/2009/05/15/latex-list-of-table-list-of-figures-and-bibliography-in-toc/

相关内容