附录中使用 \renewcommand 配置部分不起作用

附录中使用 \renewcommand 配置部分不起作用

我的附录由一章组成,该章告知目录存在附录。附录中的所有其他标题均为章节。

现在我希望节标题看起来像:

附录 A. 一些文本

附录 B. 一些文本

附录 C. 一些文本

但下面这一行

\renewcommand{\thesection}{\Alph{section}}

在大多数附录文章中可以发现它不起作用。

我的最小示例如下所示:

\documentclass[a4paper,12pt,headsepline,smallheadings,parident, numbers=noenddot, appendixprefix=true]{scrreprt}
\usepackage{appendix}
...

\begin{document}
\chapter{Chapter1}
\section{Section1}
\section{Section2}

%Appendix
\appendix
\renewcommand\thesection{\appendixname\ \Alph{section}}
\pagestyle{empty}

%for linking the appendix to toc without pagenumber
\phantomsection
\hypertarget{link.appendix}{}
\addchap*{Anhang}
\addtocontents{toc}{\protect\usekomafont{chapterentry}%
  \protect\hyperlink{link.appendix}{Anhang}}

\refstepcounter{chapter}
\newpage

%other try ...
%\renewcommand{\thesection}{\Alph{section}}

\section*{Class diagram} \label{class-diagram}
\section*{List of UI-Elementen} \label{list-ui-elements}
\section*{CD}
\end{document}

答案1

首先,您使用的是\section带标签的星号版本。此版本不为标签提供任何锚点,因此您的标签是错误的。一个简单的示例显示了此行为。

\documentclass{article} 
\begin{document} 
\section*{Class diagram} \label{class-diagram}
\ref{class-diagramm}
\end{document}

的重新定义\thesection不会影响命令,\section*因为\section*只打印具有预定义上下跳过的格式化文本。

不过,您可以执行以下操作。使用\section而不是\section*。好处

  • 你可以重新定义\thesection
  • 您可以使用标签和
  • 您获得了正确的标题。

使用当前设置,该部分将显示在目录中。为避免这种情况,您可以tocdepth在命令“附录”后将计数器设置为零。

\addtocontents{toc}{\protect\setcounter{tocdepth}{0}}

相关内容