获取正确的 PDF Hyperref

获取正确的 PDF Hyperref

最简单的方法是什么,包括你的listoffigureslistoftables在你的tableofcontents显示

图表列表.......page number

在目录中?

我在用 :

\documentclass{report}
\usepackage{lipsum}
\usepackage{hyperref}

\begin{document}
\tableofcontents
\addtocontents{toc}{\hspace*{6.35in}\underline{page}}
\listoffigures
\addcontentsline{toc}{part}{List of Figures}    
\listoftables 
\addcontentsline{toc}{part}{List of Tables}
\newpage 

\chapter{Intro} \lipsum[1]

\section{Learning the Art of Thinking} \lipsum[2]

\end{document}

我不确定part是做什么用的,但似乎在LoF和之间加了一个空格LoT,因为取出时,它们是并排的。我希望 和LoF位于LoTTOC,并且正常格式化,就像章节或小节一样,并带有正确的页码。使用上述代码,“Figures”一词会覆盖\underline{page}不需要的 。

答案1

最简单的方法取决于您所使用的类。

第一种方案:如果你正在使用KOMA 脚本类,最简单的方法是使用类选项listof=totoc

\documentclass[listof=totoc]{scrbook}

\usepackage{hyperref}
\AtBeginDocument{%
  \addtocontents{toc}{%
    \protect\hspace*{\protect\fill}\protect\underline{page}%
    \protect\par
  }%
}
\begin{document}
\tableofcontents
\listoffigures
\listoftables
\end{document}

我习惯于\hspace*{\fill}右对齐page。我不建议在上述示例中做其他事情,但是\fill如果您不想右对齐,则可以使用其他长度。这些\protect命令只是为了防止\hspace在移动参数处中断\addtocontents

第二种选择:回忆录您根本不必使用星号版本的命令:

\documentclass{memoir}

\usepackage{hyperref}
\AtBeginDocument{%
  \addtocontents{toc}{%
    \protect\hspace*{\protect\fill}\protect\underline{page}%
    \protect\par
  }%
}
\begin{document}
\tableofcontents* % no entry to toc itself
\listoffigures
\listoftables
\end{document}

第三种选择:对于标准课程,您可以使用包托比宾

第四种选择:另一个解决方案可能是:

\documentclass{book}

\AtBeginDocument{%
  \addtocontents{toc}{%
    \protect\hspace*{\protect\fill}\protect\underline{page}%
    \protect\par
  }%
}
\begin{document}
\tableofcontents
\cleardoublepage% make sure to be on the correct page with the following two commands
\csname phantomsection\endcsname% anchor for links usings hyperref
\addcontentsline{toc}{chapter}{\protect\listfigurename}% entry at the toc
\listoffigures
\cleardoublepage% make sure to be on the correct page with the following two commands
\csname phantomsection\endcsname% anchor for links usings hyperref
\addcontentsline{toc}{chapter}{\protect\listtablename}% entry at the toc
\listoftables
\end{document}

图表列表和表格列表是最高级别的标题,通常可能位于\chapter*报告和书籍类别以及\section*文章类别中。因此,两者的目录条目都应为顶级条目。这就是我在上面的示例中使用类chapter的第二个参数的原因(使用类时,您应该将其更改为)。书籍、报告或文章的顶级条目在标题和页码之间没有点。但这取决于类别。因此,如果您使用另一个类,结果可能是另一个。\addcontentslinebookarticlesection

添加到所有这些替代方案中:如果你喜欢在章节条目中使用 KOMA-Script 类或标准类的点,你可以使用包,例如添加

\usepackage{tocstyle}
\usetocstyle{allwithdot}

scrbook参见上面带有或 的示例book

tocstyle这里有一个使用with report(因为您已经告诉过,您正在使用这个类)和上面的代码的工作示例:

\documentclass{report}
\AtBeginDocument{%
  \addtocontents{toc}{%
    \protect\hspace*{\protect\fill}\protect\underline{page}%
    \protect\par
  }%
}

\usepackage{tocstyle}
\usetocstyle{allwithdot}

\begin{document}
\tableofcontents
\cleardoublepage% make sure to be on the correct page with the following two commands
\csname phantomsection\endcsname% anchor for links usings hyperref
\addcontentsline{toc}{chapter}{\protect\listfigurename}% entry at the toc
\listoffigures
\cleardoublepage% make sure to be on the correct page with the following two commands
\csname phantomsection\endcsname% anchor for links usings hyperref
\addcontentsline{toc}{chapter}{\protect\listtablename}% entry at the toc
\listoftables
\end{document}

结果:

tocstyle 与报告一起工作

tocstyle这里使用和tocbibind和 也是一样hyperref

\documentclass{report}
\AtBeginDocument{%
  \addtocontents{toc}{%
    \protect\hspace*{\protect\fill}\protect\underline{page}%
    \protect\par
  }%
}

\usepackage{tocbibind}
\usepackage{tocstyle}
\usetocstyle{allwithdot}
\usepackage{hyperref}

\begin{document}
\tableofcontents
\listoffigures
\listoftables
\end{document}

结果:

toystyle 和 tocbibind 以及 hyperref 报告

答案2

使用tocbibind包,它与bookreportarticle类一起使用。摘自它的手册:

tocbibind 软件包可以将目录、图片列表、表格列表、参考书目和索引的标题全部添加到目录中。默认情况下,所有这些文档元素(如果存在)都将合并到目录中(简称 ToC)。软件包选项可用于关闭任何这些包含项。

答案3

在您使用\listoftables\listoffigures命令之后,您可以使用以下命令手动添加 ToC 引用:

\addcontentsline{toc}{sectiontype}{ToC Entry}

根据目录设置的深度,即它是否仅显示章节、节、小节等...选择适合您显示的“sectiontype”。

“ToC 条目”是您想要在目录中显示的内容。

因此,对于您的表格,您可以使用:

\addcontentsline{toc}{section}{List of Tables}

相关内容