\thepage 打印上一页页码

\thepage 打印上一页页码

我试图在子部分旁边放置一个可点击的图标,以便读者可以点击它来访问与该子部分相关的 URL。此 URL 包含页码、子部分编号和子部分标题作为参数。

这是我正在使用的代码:

\subsection[My Dummy Subsection]{My Dummy Subsection \texorpdfstring{\href{\mybaseurl sn=\thesubsection &pn=\thepage &tn=My-Dummy-Subsection}{\icon{hreficon.jpg}} }{}}

对于大多数页面,此方法都行得通,但对于某些页面,生成的 URL 包含\href错误的页码。具体来说,\thepage它给出的是上一页的页码,而不是子节所在的页码。我观察到,当子节是页面的第一行时,就会发生这种情况。

知道发生了什么吗?如何解决?

答案1

由于页码编号比较复杂,并且取决于页面的构造方式,因此最好使用 ,\label然后\pageref来检索准确的页码。考虑到这一点,如下所示:

\documentclass{article}

\usepackage{hyperref}

\begin{document}

\tableofcontents

% <some document content>

\section
  [My dummy section]% ToC
  {My dummy section \pageref*{sec:dummy_section}}% Title
\label{sec:dummy_section}

% <some more document content>

\end{document}

在某些情况下(当页面引用的标签号发生变化时),您必须编译两次才能设置正确的引用。

相关内容