参考书目章节的页码和书签错误

参考书目章节的页码和书签错误

我对某个具体内容有疑问\documentclass[]{report}:在目录中,参考书目章节的书签和页码都是不正确的,因为它们指向上一节(第 9.x 章)而不是参考书目。

以下是代码:

\documentclass[11pt,a4paper,twoside,openright]{report}

\usepackage[hyphens]{url}
\usepackage[hidelinks]{hyperref}
\usepackage{graphicx}
\usepackage{tabularx}
\usepackage{subfigure}
\usepackage{afterpage}
\usepackage{amsmath,amssymb}            
\usepackage{rotating}  
\usepackage{fancyhdr}  
\usepackage{bbding}  
\usepackage{framed}  
\usepackage[scriptsize]{caption} 
\usepackage[italian,english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{multirow}
\usepackage{listings}
\usepackage{soul}
\usepackage{graphicx}
\usepackage{lscape}
\usepackage{float}
\usepackage{placeins}
\usepackage{endnotes}
\usepackage{color}
\usepackage{dirtree}
\usepackage{enumitem}
\usepackage{pgfplots}


\addtolength{\oddsidemargin}{+1.3 cm}
\addtolength{\evensidemargin}{-1.3 cm}

\linespread{1.1}


\renewcommand{\captionfont}{\normalfont \sffamily \itshape \small}

\newcommand{\checklist}[1]{\vspace{1cm}\begin{framed}
\noindent \textbf{Checklist} #1\end{framed}}

\newcommand{\note}[2]{\begin{framed}\sffamily\small
\noindent \textbf{#1} \\ #2\end{framed}}

\pagestyle{empty}


\begin{document}
\pgfplotsset{compat=1.15}

\include{cover_page}
\thispagestyle{empty} \normalfont 

\clearpage
\include{dedication}

\thispagestyle{empty}  \cleardoublepage
\pagenumbering{Roman}
\include{abstract}

\thispagestyle{empty} \vspace*{.75truecm} \cleardoublepage
\include{acknowledgements}

\thispagestyle{empty} \vspace*{.75truecm} \normalfont \cleardoublepage
\pagestyle{plain}\renewcommand{\chaptermark}[1]{\markboth{\chaptername\ \thechapter.\ #1}{}} 
\renewcommand{\sectionmark}[1]{\markright{\thesection.\ #1}}         
\fancyhead[LE,RO]{\bfseries\thepage}    

\fancyhead[RE]{\bfseries\leftmark}    
\fancyhead[LO]{\bfseries\rightmark}     
\renewcommand{\headrulewidth}{0.3pt} 

\tableofcontents
\listoffigures
\listoftables

\cleardoublepage

\pagenumbering{arabic}
\setcounter{page}{1}


\include{chapter1/chapter}
\include{chapter2/chapter}
\include{chapter3/chapter}
\include{chapter4/chapter}
\include{chapter5/chapter}
\include{chapter6/chapter}
\include{chapter7/chapter}
\include{chapter8/chapter}
\include{chapter9/chapter}

\cleardoublepage


\addcontentsline{toc}{chapter}{Bibliography}
\bibliography{mendeley_v2}
\bibliographystyle{plain}


\cleardoublepage

\appendix

\include{appendixA/appendix}
\include{appendixB/appendix}
\include{appendixC/appendix}

\end{document}

任何建议都将非常感谢!

答案1

在报告中\bibliography(通过其使用环境thebibliography)发出一个\chapter*{\bibname}。但首先它运行\clearpage\cleardouble页面。

所以

\addcontentsline{toc}{chapter}{Bibliography}
\bibliography{mendeley_v2}

最终可能会给出错误的页码/书签目标。

通常可以通过发出\clearpage之前的帖子来解决此问题\addcontentsline,但这可能不起作用,特别是如果hyperref涉及到。

有一个更好的解决方案:使用tocbibind包作为(如目录、参考书目、索引)它会将这些添加到目录中并包含各种工具来控制它。

因此,使用该tocbibind包并删除该\addcontentsline行以获得更简洁的代码。

相关内容