目录显示错误的页码

目录显示错误的页码

我需要将目录包含在目录本身中。我的目录从第 II 页开始,但显示为第 III 页(最后一页)。我使用了 \tocbibind 包,但它显示为我不想要的章节。我希望它显示为一个部分。我还是个初学者,所以我非常不确定如何在目录中包含某些内容。

\documentclass[a4paper, 12pt, oneside, nenglish]{scrreprt}
\usepackage[paper=a4paper,left=30mm,right=15mm,top=20mm,bottom=25mm]{geometry}\pagestyle{plain}

\usepackage[pdf]{pstricks}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage{graphicx, subfigure}
\graphicspath{{img/}}
\usepackage{fancyhdr}
\usepackage{lmodern}
\usepackage{color}
\usepackage{transparent}
\usepackage{float}
\usepackage{setspace}
\restylefloat{figure}
\usepackage{tikz}
\usepackage[locale=DE]{siunitx}
\usepackage{cancel}
\usepackage{pdfpages}
\usepackage{textpos}
\usepackage{blindtext}
\usepackage{natbib}
\usepackage{mdframed}
\usepackage{tcolorbox}
\usepackage{multicol}
\usepackage{multirow}
\usepackage{tocbasic}

\begin{document}

\pagestyle{plain}
\pagenumbering{Roman}
\tableofcontents
\addcontentsline{toc}{section}{Contents}
\listoffigures
\addcontentsline{toc}{section}{List of Figures}
\listoftables
\addcontentsline{toc}{section}{List of Tables}


\chapter{Introduction}
 
bla bla

\chapter {results}

bla bla

\end{document}

答案1

\addcontentsline{toc}是将内容添加到目录中的正确方法。

无论如何,您正在使用 KOMA-Script 类,它提供了许多选项来处理您的要求。

\KOMAoptions{toc=listof}

将图表列表添加到目录中。

\setuptoc{lof}{leveldown}
\setuptoc{lot}{leveldown}

格式化 lof 和 lot 标题\section(与类别相同scrreprt)。

\setuptoc{toc}{leveldown, totoc}

格式化目录标题并将\section其包含在目录本身中。

您不需要加载,tocbasic因为它由 内部使用scrreprt

\documentclass[a4paper, 12pt, oneside, nenglish]{scrreprt}
\usepackage[paper=a4paper,left=30mm,right=15mm,top=20mm,bottom=25mm]{geometry}\pagestyle{plain}

\usepackage[pdf]{pstricks}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage{graphicx, subfigure}
\graphicspath{{img/}}
\usepackage{fancyhdr}
\usepackage{lmodern}
\usepackage{color}
\usepackage{transparent}
\usepackage{float}
\usepackage{setspace}
\restylefloat{figure}
\usepackage{tikz}
\usepackage[locale=DE]{siunitx}
\usepackage{cancel}
\usepackage{pdfpages}
\usepackage{textpos}
\usepackage{blindtext}
\usepackage{natbib}
\usepackage{mdframed}
\usepackage{tcolorbox}
\usepackage{multicol}
\usepackage{multirow}

\KOMAoptions{toc=listof}

\setuptoc{toc}{leveldown, totoc}
\setuptoc{lof}{leveldown}
\setuptoc{lot}{leveldown}

\begin{document}

\pagestyle{plain}
\pagenumbering{Roman}
\tableofcontents

\listoffigures

\listoftables

\chapter{Introduction}

bla bla

\chapter {results}

bla bla

\end{document}

答案2

您应该只使用 KOMA-Script 提供的选项和配置功能。在这种情况下,类选项listof=totoc​​和附加tocbasic功能\setuptoc{toc}{totoc}

\documentclass[12pt,listof=totoc]{scrreprt}
\usepackage[paper=a4paper,left=30mm,right=15mm,top=20mm,bottom=25mm]{geometry}

\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

\setuptoc{toc}{totoc}% nonsense, but you've asked for

\begin{document}

\pagenumbering{Roman}
\tableofcontents
\listoffigures
\listoftables

\chapter{Introduction}
 
bla bla

\chapter {results}

bla bla

\end{document}

在此处输入图片描述

请注意,我删除了几个不相关的包和不需要的选项。

还要注意的是,

  • 使用包fancyhdr会导致警告,建议改用scrlayer-scrpage
  • 来自 LaTeX 2018-04-01\usepackage[utf8]{inputenc}不再需要;
  • 使用显著改变环境\restylefloat{figure}的行为;figure
  • tocbasic使用 KOMA-Script 类时不需要加载包,因为该类已经使用了该包。

如果您确实希望目录条目成为章节条目,那么您还应该将相应的列表设为章节而不是章节:

\documentclass[12pt,listof=totoc,listof=leveldown]{scrreprt}
\usepackage[paper=a4paper,left=30mm,right=15mm,top=20mm,bottom=25mm]{geometry}

\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

\setuptoc{toc}{totoc,leveldown}

\begin{document}

\pagenumbering{Roman}
\addchap{Contents and Other Lists}
\tableofcontents
\listoffigures
\listoftables

\chapter{Introduction}
 
bla bla

\chapter {results}

bla bla

\end{document}

在此处输入图片描述

对于目录中所有未编号的章节使用章节级别也是可能的,但不建议这样做:

\documentclass[12pt,listof=totoc]{scrreprt}
\usepackage[paper=a4paper,left=30mm,right=15mm,top=20mm,bottom=25mm]{geometry}

\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

\setuptoc{toc}{totoc}
\NewCommandCopy{\OriginalAddChapterTocEntry}{\addchaptertocentry}
\renewcommand*{\addchaptertocentry}[2]{%
  \IfArgIsEmpty{#1}{\addsectiontocentry}{\OriginalAddChapterTocEntry}{#1}{#2}%
}

\begin{document}

\pagenumbering{Roman}

\tableofcontents
\listoffigures
\listoftables

\chapter{Introduction}
 
bla bla

\chapter {results}

bla bla

\end{document}

在此处输入图片描述

相关内容