附录包含两个章节和两个计数器

附录包含两个章节和两个计数器

我想为当前项目创建两个连续的附录。它们的格式应如下:

Appendix A

A.1 Random Section 

A.2 Random Section

Appendix B

B.1 Random Section 

但我当前的输出是这样的:

Appendix A

A.1 Random Section 

A.2 Random Section

Appendix B

A.3 Random Section 

我想我误解了有关 \setcounter 和 \addcontentsline 的一些非常简单的内容。这是一个最小的工作示例:

\documentclass[a4paper,12pt,oneside,BCOR5mm, DIV=12]{scrreprt}

    \begin{document}

        \appendix
        \chapter*{Anhang A\markboth{Anhang A}{Anhang A}}
        \setcounter{chapter}{1}
        \addcontentsline{toc}{chapter}{Anhang A}

        \section{Literaturverzeichnis}

        \chapter*{Anhang B\markboth{Anhang B}{Anhang B}}
        \setcounter{chapter}{1}
        \addcontentsline{toc}{chapter}{Anhang B}

        \section{Tabellenverzeichnis}

    \end{document}

答案1

使用\stepcounter{chapter}和等的计数器重置链section开始起作用——但情况并非如此\setcounter{chapter}{1}

当然,\setcounter{chapter}{1}总是会固定章节编号1,因此,A.1被打印等等。

\chapter如果使用 而不是 ,整个问题就不会发生\chapter*

\documentclass[a4paper,12pt,oneside,BCOR5mm, DIV=12]{scrreprt}

\begin{document}
\tableofcontents
\appendix

\stepcounter{chapter}
\addcontentsline{toc}{chapter}{Anhang A}
\chapter*{Anhang A\markboth{Anhang A}{Anhang A}}

\section{Literaturverzeichnis}

\section{\LaTeXe\ lernen}

\stepcounter{chapter}
\addcontentsline{toc}{chapter}{Anhang B}
\chapter*{Anhang B\markboth{Anhang B}{Anhang B}}

\section{Tabellenverzeichnis}

\end{document}

在此处输入图片描述

更新

更简洁的包装方式appendix

\documentclass[a4paper,12pt,oneside,BCOR5mm, DIV=12]{scrreprt}

\usepackage[ngerman]{babel}
\usepackage{appendix}

\begin{document}
\tableofcontents
\begin{appendices}

\chapter{Anhang A}
\section{\bibname}

\section{\LaTeXe\ lernen}
\chapter{Anhang B}

\section{\listtablename}
\end{appendices}

\end{document}

答案2

由于您正在使用\chapter*,因此章节计数器不会增加,而这通常会伴随着子部分级别计数器的重置。

在下面的例子中,我重新排列了命令的顺序,以便更有意义(即使你后来决定使用hyperref)。

在此处输入图片描述

\documentclass{scrreprt}

\begin{document}

\clearpage
\appendix
\addcontentsline{toc}{chapter}{Anhang A}
\chapter*{Anhang A}\markboth{Anhang A}{Anhang A}
\renewcommand{\thechapter}{A}\stepcounter{chapter}

\section{Literaturverzeichnis}

\clearpage
\addcontentsline{toc}{chapter}{Anhang B}
\chapter*{Anhang B}\markboth{Anhang B}{Anhang B}
\renewcommand{\thechapter}{B}\stepcounter{chapter}

\section{Tabellenverzeichnis}

\end{document}

您也可以选择调整\thesection打印方式,而不是设置\thechapter

答案3

我猜您有理由使用所有这些\markboths 和带星号的\chapters \addcontentsline,但是如果没有 s,您也可以更轻松地完成操作。只需使用无星号\chapter就可以了。

如果确实需要它们,只需向上移动\setcounter一行即可解决问题。

\documentclass[a4paper,12pt,oneside,BCOR5mm, DIV=12]{scrreprt}

    \begin{document}
\tableofcontents
        \appendix
        \chapter*{Anhang A\markboth{Anhang A}{Anhang A}}
        \setcounter{chapter}{1}
        \addcontentsline{toc}{chapter}{Anhang A}

        \section{Literaturverzeichnis}

        \setcounter{chapter}{2}
        \chapter*{Anhang B\markboth{Anhang B}{Anhang B}}
        \addcontentsline{toc}{chapter}{Anhang B}

        \section{Tabellenverzeichnis}

    \end{document}

相关内容