更精确的超链接

更精确的超链接

我目前正在使用hyperrefmakeidx制作超链接索引,效果很好。但现在,超链接总是将我带到页面顶部;理想情况下,我希望链接更精确(直接将我带到段落或表格,而不仅仅是页面)。

hyperref使用和可以实现吗makeidx?如果可以,我该怎么做?如果不行,还有哪些软件包可以实现这一点?

梅威瑟:

\documentclass{article}

\usepackage{makeidx}
\usepackage{hyperref}
\usepackage{lipsum}

\makeindex

\begin{document}

First page\index{First}

\lipsum[1-3]

Later on the first page\index{Later}

\newpage
\printindex

\end{document}

我希望“稍后”链接直接转到“稍后”段落,而不是页面顶部。

答案1

最简单的方法是makeindex生成一个页面索引,其中可以找到 \index 条目,这些条目可能出现在多个页面上,或者可能在一个页面内出现多次,因此索引将组合一个页面的所有条目并累积页码以供稍后列出。

当您单击索引编号条目时,它主要只知道页码,因此它只能转到该页面上的锚点,并且锚点通常位于页面的开头(顶部)。

对于替代链接,手册中描述了许多内容,例如目录 (ToC/Outline),您可以在那里添加额外内容,但对于标准文本列表或双向链接来说,它用处不大。还有其他级别,例如“书签”(命名目标) 和“特殊”(通常是外部 URL,尽管它们可以内省使用),但我建议您在发布时不要广泛使用这些级别,因为对于读者来说,如果做得不好,它们可能会成为问题的巢穴。对于用户来说,当名称很长时,即使是目录 (大纲) 也会出现问题。

最简单的内部链接级别

你可以建立一个超链接列表或表格

\hyperlink{First}  
\hyperlink{Later}  

这些需要定义它们的目标(命名目的地)

This is the first page, with a \hypertarget{First} 
Later on the first page\hypertarget{Later}  

这些可以是双向的

This is the first page, with a \hypertarget{First}
{\hyperlink{Later}{and link to a target later on.}}  

Later on the first page\hypertarget{Later}{\hyperlink{First}{Top of page.}} 

相关内容