如何在没有页码的附录前添加“附录”作为目录条目(documentclass:'article')

如何在没有页码的附录前添加“附录”作为目录条目(documentclass:'article')

我曾尝试在目录中的主要作品和附录之间添加“附录”。我也不希望此目录条目显示任何页码。

到目前为止,我已经成功地编写了这样的条目:

\documentclass[11pt,a4paper]{article}
\usepackage{tocstyle}
\usetocstyle{standard}
\settocstylefeature[-1]{pagenumberbox}{\csname @gobble\endcsname}%no page numbers for part  

\begin{document}
\tableofcontents

\section{Section in main text}
Bla bla bla...


\clearpage
\appendix
\addcontentsline{toc}{part}{Appendix}%TOC entry without page numbering 

\section{First appendix}
Bla bla bla...

\end{document}

这给了我一个符合我要求格式的目录条目。但目录中的超链接指向附录前的最后一页。

我如何制作目录条目以便链接指向附录的第一页?

您对获取我想要的 TOC 条目的更好/更简单的方法有什么建议吗?

答案1

这个技巧就是伪造一个带有空页码的目录行。\addcontentsline将通过使用中间文件步骤来插入页码.aux

\addtocontents{toc}{\protect\contentsline{part}{\appendixname}{}{}}

首先添加行

\@writefile{toc}{\contentsline {part}{Appendix}{}{}}

.aux文件,\@writefile然后命令将向.toc最后提供正确的行。

请注意\protect,因为\contentsline非常脆弱。

\documentclass[11pt,a4paper]{article}
\usepackage{tocstyle}
\usetocstyle{standard}
\settocstylefeature[-1]{pagenumberbox}{\csname @gobble\endcsname}%no page numbers for part  
\usepackage{hyperref}
\begin{document}
\tableofcontents

\section{Section in main text}
Bla bla bla...


\clearpage
\appendix
\addtocontents{toc}{\protect\contentsline{part}{\appendixname}{}{}}
%\addcontentsline{toc}{part}{Appendix}%TOC entry without page numbering 

\section{First appendix}
Bla bla bla...

\end{document}

在此处输入图片描述

编辑 带有指向附录开头的明确超链接的版本(在本例中,与第一个附录部分是同一页)

\documentclass[11pt,a4paper]{article}

\usepackage{tocstyle}
\usepackage{blindtext}

\usetocstyle{standard}
\settocstylefeature[-1]{pagenumberbox}{\csname @gobble\endcsname}%no page numbers for part  

\usepackage{hyperref}

\begin{document}
\tableofcontents

\section{Section in main text}
\blindtext[10]

\clearpage
\hypertarget{appendixstart}{\appendix}% Make a anchor here
\addtocontents{toc}{\protect\contentsline{part}{\protect\hyperlink{appendixstart}{\appendixname}}{}{}}

\section{First appendix}
\blindtext[10]

\end{document}

相关内容