如何在目录中创建“从第 xx 页到最后一页”?

如何在目录中创建“从第 xx 页到最后一页”?

如何在 LaTeX 中将包括最后一页的页码在内的页码范围放入目录中(见下图)?我在论坛中搜索过但未找到解决方案。

将最后一页的页码放入目录中

答案1

需要 MWE 来给出适用于具体案例的答案:

请帮助我们帮助您并添加最小工作示例(MWE)\documentclass{...}这说明了您的问题。当我们看到以 开头和结尾的可编译代码时,重现问题并找出问题所在将变得容易得多 \end{document}

与任何其他编程语言不同,如果您更改文档的序言,输出结果将有很大不同,例如冲突的软件包或页面设置因代码中的某些细节而更改等等。这就是为什么我们需要一个完整的示例以及包含序言的相关部分。否则我们可能无法重现您的问题。

(从文本构建块

但是因为这个想法很有趣并且可以在这里证明几件事,所以我将尝试通过处理不同的情况来给出答案:

  1. “附录 A - Y ... [页码]”已自动添加到目录 (ToC)。如果不知道自动过程,就无法知道如何更改它。它既不是\chapter{Appendices A - Y},因为那样它就会是一个编号章节,也不是\chapter*{Appendices A - Y},因为那样它就不会在目录中列出。要更改这样的目录,可以 (下面的警告 )来更改.toc文件,其中包含目录代码。例如,\chapter{Example}在最简单的情况下,结果是\contentsline {chapter}{\numberline {<number/name of chapter>}Example}{<page number>}。如果hyperref 包被使用,这将读取\contentsline {chapter}{\numberline {<number/number of chapter>}Example}{<page number>}{chapter.<number of chapter>}- 因此 MWE 是必要的!<page number>.toc文件中用“ 37 - 62”替换将在再次编译文档时为您提供该信息,但编译也会覆盖文件.toc,即您需要在每次编译运行中应用手动更改。此外,页码可能会发生变化,即您始终必须检查它是否仍然是“ 37 - 62”或可能是“ 38 - 63”或其他。如果hyperref与选项linktoc=all或一起使用linktocpage=true(没有 MWE 我们不知道这一点),则页码将超链接到该页面,并且将条目更改为.toc37 - 62”不会更改链接目标,但会创建一个仍然链接到“37”的链接“37 - 62” - 这可能是预期的,但可能需要单独的链接到“37”和“62”。

  2. 假设条目“附录 A - Y ... [页码]”未自动添加到目录中,例如\chapter*{Appendices A - Y}使用并由创建的目录条目 - 好吧,您明白为什么 MWE 会有所帮助,不是吗?

a) 如果在 之后\addcontentsline{toc}{chapter}{Appendices A - Y}使用了 (\addcontentsline则为查找命令) \chapter*{Appendix A},则文件中的条目.toc可以读取 \contentsline {chapter}{Appendices A - Y}{37}{chapter*.11}。按照说明手动37更改“ ” (.toc并警告 ) 多于。

b) 如果\addtocontents{toc}{\noindent Appendices A - Y \hfill \thepage}使用,则可以轻松更改为\addtocontents{toc}{\noindent Appendices A - Y \hfill \thepage{} - \pageref{LastPage}},这需要\usepackage{最后一页}在序言中。(除了 lastpage 包,你可能需要使用页面包。)如果需要引用“附录 Y”的最后一页(并且文档中它后面还有另一页),则必须\label{EndOfY}在“附录 Y”的最后一页设置自己的标签并引用该页而不是。如果 hyperref 包与选项或(MWE...)LastPage一起使用,对最后一页的引用甚至会超链接,但对于给定的“附录 A”的第一页却没有超链接,这显然很丑陋,因为它是不一致的。linktoc=alllinktocpage=true

i) 无超链接:只需使用\pageref*{LastPage}即可使超链接消失。

ii) 超链接:不需要\thepage引用“附录 A”的开头。设置一个\label,例如\chapter*{Appendix A\label{AppA}},并引用它,例如\addtocontents{toc}{\noindent Appendices A - Y \hfill \pageref{AppA} - \pageref{LastPage}},就可以了。

请注意,例如,hyperreflinktoc=all还会为目录中的文本创建超链接,即需要AppY为“附录 Y”设置标签并使用

\addtocontents{toc}{\noindent Appendices \hyperref[AppA]{A} - %
  \hyperref[AppY]{Y} \hfill \pageref{AppA} - \pageref{LastPage}}

但是等一下:如果附录 Y 不再是附录 Y 而是附录 Z,因为您在附录 M 和附录 N 之间添加了附录,会发生什么情况?因此,最好使用\ref{AppA}并确保附录的参考资料是按字母顺序排列的。

iii) 如果tocloft 包\addtocontents{toc}{被使用,那么...的格式}就需要改变,例如,可以用“dotfill”来代替\hfill。(MWE!)

我希望这能给出一些关于可能性的想法,然后可以引出特定的搜索词或特定的问题(使用 MWE ;-) )。

祝你的论文顺利!

相关内容