目录中参考书目的页码与实际页码不相等

目录中参考书目的页码与实际页码不相等

我使用罗马页码来编排参考书目。因此它从第 IV 页开始。

不知何故,它出现VI在目录中(实际上是参考书目的最后一页)。

有可能将其更改为吗IV

\newpage
\pagenumbering{Roman}
\setcounter{page}{4}
\printbibliography[title=Literaturverzeichnis]
\renewcommand\bibname{Literaturverzeichnis}
\addcontentsline{toc}{section}{Literaturverzeichnis}

答案1

假设您使用,biblatex则可以使用heading=bibintoc选项将printbibliography参考书目包含在目录中。通过使用此选项,您无需重新定义,bibname也不addcontentsline需要命令。

这是一个最小的工作示例:

\documentclass{scrartcl}

\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}

\begin{document}

\tableofcontents
\nocite{*}

\newpage
\pagenumbering{Roman}
\setcounter{page}{4}
\printbibliography[title=Literaturverzeichnis, heading=bibintoc]
%\renewcommand\bibname{Literaturverzeichnis}
%\addcontentsline{toc}{section}{Literaturverzeichnis}

\end{document}

编辑:页码不正确的原因是

  • 首先printbibliography输出标题(第 IV 页)以及参考书目内容(填充第 IV 页至第 VI 页),然后
  • 然后addcontentsline创建目录的条目(此时页码为 VI)

您必须addcontentsline在参考书目标题之后、参考书目内容打印之前直接插入。该选项heading=bibintoc可为您完成此操作。

答案2

您需要做的就是将 放在\addcontenstline{...参考书目之前。将其放在参考书目之后会获取参考书目的最后一页。

例如:

% bibintocprob.tex SE 553203
\documentclass{article}
\usepackage{lipsum}
\begin{document}
\tableofcontents
\section{First}
\lipsum[1]
\newpage
\pagenumbering{Roman}
\setcounter{page}{4}
\addcontentsline{toc}{section}{References}
\begin{thebibliography}{Dillo 83}
\bibitem[Knud 66]{kn:gnus} D. E. Knudson. \textit{1966 World Gnus Almanac.}
\end{thebibliography}
\end{document}

由于您没有提供 MWE,因此我不得不编造一个并使用 LaTeX“自己动手”书目代码样式。

相关内容