В своей диссертации я использую и пакет appendix
, и hyperref
пакет. Когда я дохожу до приложения, я использую следующие команды:
\appendix
\noappendicestocpagenum
\addappheadtotoc
\appendixpage
В оглавлении hyperref
предоставляет ссылки только на номера страниц, используя linktocpage=true
опцию. Номер страницы для страницы «Приложения» не отображается в оглавлении благодаря команде \noappendicestocpagenum
; однако, hyperref
независимо от этого, генерирует небольшое пустое красное поле. Есть ли способ остановить формирование этого поля?
Вот минимальный рабочий пример.
\documentclass{report}
\usepackage{appendix}
\usepackage[pdftex,linktocpage=true]{hyperref}
\begin{document}
\tableofcontents
\chapter{Chapter Name}
Here is my document.
\clearpage
\appendix
\noappendicestocpagenum
\addappheadtotoc
\appendixpage
\chapter{Appendix Name}
Here is my appendix.
\end{document}
решение1
В вашем случае я бы просто переопределил то, что \addappheadtotoc
делает (поскольку вы знаете структуру, с которой будете работать):
\makeatletter
\renewcommand{\addappheadtotoc}{%
\phantomsection
\addtocontents{toc}%
{\protect\contentsline{chapter}{\appendixtocname}{}{}}%
}
\makeatother
Конечно,appendix
написан для управления работой в различных условиях, но зная условия, в которых вы находитесь, это легкое и управляемое изменение.
Вот полный минимальный пример:
\documentclass{report}
\usepackage{appendix}% http://ctan.org/pkg/appendix
\usepackage[pdftex,linktocpage=true]{hyperref}% http://ctan.org/pkg/hyperref
\makeatletter
\renewcommand{\addappheadtotoc}{%
\phantomsection
\addtocontents{toc}%
{\protect\contentsline{chapter}{\appendixtocname}{}{}}%
}
\makeatother
\begin{document}
\tableofcontents
\chapter{Chapter Name}
Here is my document.
\clearpage
\appendix
\noappendicestocpagenum
\addappheadtotoc
\appendixpage
\chapter{Appendix Name}
Here is my appendix.
\end{document}