我有以下命令用于在我的博士论文中设置一些标题页:
\newcommand{\AddPaperTitlePage}[5]{%
\begin{titlingpage*}
\addcontentsline{toc}{chapter}{#1}
\begin{flushright}
\setlength\beforepapernumskip{30pt}
\setlength\beforepapernameskip{5\baselineskip}
\setlength\beforepaperdetailskip{2\baselineskip}
\vspace*{\beforepapernumskip}
{\papernumfont#1}
\vspace{\beforepapernameskip}
{\papernamefont#2}
\vspace{\beforepaperdetailskip}
{\paperdetailfont#3}\\[2\baselineskip]
{\paperdetailfont#4}\\[10mm]
%\includegraphics[width=0.75\textwidth]{./figs/CBS-O-METER}
\vfill
{\paperdetailfont Supporting Information Available At: \\ \url{#5}}
\end{flushright}
\end{titlingpage*}
}
但是目录中创建的超链接不会将读者带到标题页的实际页面,而是带到目录中最后一个“正常创建”的章节。有没有办法让上述命令中的超链接起作用?
答案1
首先,始终提供完整但最小的示例,供其他人复制和测试。例如,此处的代码未显示正在使用 hyperref。但我们从上下文中知道这一点。
为了使超链接正常工作,需要有独特的东西来锁定。通常这是一个计数器,如章节、方程式等。这里没有,所以超链接最终会变得很奇怪。
为了这个目的,我们\phantomsection
提供了一些东西来\addcontentsline
抓住它。像这样使用它
\phantomsection
\addcontentsline....