参考文献和索引的 PDF 书签与附录中的一样。层次结构错误

参考文献和索引的 PDF 书签与附录中的一样。层次结构错误

我正在写我的学士学位论文,这是代码的最后一部分:

\part*{Apéndices}
\addcontentsline{toc}{part}{\protect\numberline{}Apéndices}
% ------     Anexos bloque 1  ---------- %
\subfile{anexos.tex}
% ------    Espacios Polacos   ---------- %
\subfile{polish.tex}
\backmatter
% ------     Referencias  ---------- %
\printbibliography[heading=bibintoc]
% ------     Índice  ---------- %
\phantomsection
\printindex
\end{document}

我喜欢这种方式,因为我在目录中得到了这种效果(即参考文献和索引没有编号,似乎不属于附录(Apéndices)):

enter image description here

然而,我发现真正烦人的是输出 PDF 在书签中的层次结构错误,因为参考文献和索引显示为属于附录:

enter image description here

如果我使用,\part{References}那么我会得到一整页用大字母写着“参考文献”,我真的不想这样。我希望参考文献和索引在目录中看起来就像“附录”一样,但在书签中是独立的部分。

编辑:这是我的代码最后一部分之前的重要部分,以防有帮助。

\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc} 
\usepackage[spanish,mexico]{babel}
\usepackage{subfiles}
\usepackage{appendix}
\usepackage{makeidx}
\makeindex
% ----------     BibLaTex     ------------ %
\usepackage[style=american]{csquotes}
\usepackage[backend=bibtex, citestyle=numeric,bibstyle=authoryear,url=true,firstinits=true]{biblatex}
\usepackage{tocloft}
\renewcommand{\cftchapdotsep}{\cftdotsep}
\usepackage[nottoc,numbib]{tocbibind}
\DefineBibliographyStrings{spanish}{%
  bibliography = {Referencias},
}
% ----------      Hyperref    ------------ %
\usepackage{hyperref}
\hypersetup{%
    colorlinks=true, 
    citecolor=blue,
    linkcolor=black,
    urlcolor=black} 
\addbibresource{ref.bib}
% ---------    Cuerpo del documento  -------------- %
\begin{document}
\maketitle
\frontmatter
\tableofcontents
\mainmatter
\part{Medida y Categoría}
\appendix

答案1

添加bookmark包裹到你的序言库(加载后hyperref) 并\bookmarksetup{startatroot}立即发出\backmatter

根据bookmark文档(部分1.2.5 级别选项,第 5 页):

书签条目的顺序由命令的出现顺序定义。树结构由书签节点的\bookmark属性构成。的值是整数。如果书签条目的级别比前一个节点的值高,则该条目将成为前一个节点的子节点。差值的绝对值无关紧要。levellevel

包会bookmark通过全局属性“当前级别”来记住前一个书签条目的级别。

可以通过以下选项配置级别系统的行为:

level:设置级别,参见上文描述。如果给出的选项级别没有值,则恢复默认行为,即使用“当前级别”作为级别值。自 2010/10/19 版本起,v1.16 包bookmark还支持名称partsection其他(如果定义了宏\toclevel@part\toclevel@section(由包完成hyperref,参见选项bookmarkdepth)。

rellevel:设置相对于上一级别的级别。正值表示书签条目成为上一书签条目的子级。

keeplevellevel:使用或设置的级别rellevel,但不更改全局属性“当前级别”。可以通过设置为 false 来禁用该选项。

startatroot:此时书签树再次从顶层开始。下一个书签条目不会作为上一个条目的子条目进行排序。示例场景:文档使用部分。但是,有最后一章不应放在最后一部分之下:

\documentclass{book}
[...]
\begin{document}
  \part{First part}
    \chapter{First chapter in first part}
    [...]
  \part{Second part}
    \chapter{First chapter in second part}
    [...]
  \bookmarksetup{startatroot}
  \chapter{Index}% does not belong to second part
\end{document}

答案2

解决这个问题的一个快速方法可能是超链接插入附加书签:

% ------     Referencias  ---------- %
\pdfbookmark[-1]{Referencias y Indices}{BM-Referencias}  
\printbibliography[heading=bibintoc]

我在使用您的 MWE 时遇到了一些困难,因此您可能需要调整一些参数才能使其正常工作:

  • [-1]:表示将书签放在哪个级别(相对于当前级别)。
  • {Referencias y Indices}:要打印到层次结构中的文本
  • {BM-Referencias}:像标签这样的东西,需要是唯一的。

相关内容