我想打印带有前缀“附录 A:[某些标题]”,“附录 B:[某些其他标题]”...的附录标题。
我使用了以下定义的命令(最后可运行 tex-document):
\newcounter{rsss}
\DeclareRobustCommand{\appendixString}{
\setcounter{rsss}{\value{chapter}}
\addtocounter{rsss}{- \value{chapterCounter}}
Appendix\Alph{rsss} :
}
\DeclareRobustCommand{\appendixStringHeadline}{
\setcounter{rsss}{\value{chapter}}
\addtocounter{rsss}{- \value{chapterCounter}}
\addtocounter{rsss}{1}
Appendix \Alph{rsss} :
}
\DeclareRobustCommand{\appendix}[2]{
\addchap[\appendixStringHeadline #1]{\appendixStringHeadline #1}\label{#2}
\ihead{
\appendixString #1
}
\stepcounter{chapter}
}
这对标题和大标题有效,但在目录中,始终有“附录 A”。我该如何修复此问题?我尝试使用 手动设置目录名称[]
,但此方法无效 :/。感谢您的帮助 :)
可运行的 tex 文件
\documentclass{scrreprt}
\usepackage{scrpage2}\pagestyle{scrheadings}
\newcounter{chapterCounter}
\newcounter{rsss}
\DeclareRobustCommand{\appendixString}{
\setcounter{rsss}{\value{chapter}}
\addtocounter{rsss}{- \value{chapterCounter}}
Appendix \Alph{rsss} :
}
\DeclareRobustCommand{\appendixStringHeadline}{
\setcounter{rsss}{\value{chapter}}
\addtocounter{rsss}{- \value{chapterCounter}}
\addtocounter{rsss}{1}
Appendix \Alph{rsss} :
}
\DeclareRobustCommand{\appendix}[2]{
\addchap[\appendixStringHeadline #1]{\appendixStringHeadline #1}\label{#2}
\ihead{
\appendixString #1
}
\stepcounter{chapter}
}
\begin{document}
\tableofcontents
\chapter{ Bla}
\chapter{ Bla Bla}
\appendix{test 1}{bla bla}
\appendix{test 2}{bla}
\end{document}
答案1
我不确定你为什么要使用如此复杂的方法。
\documentclass{scrreprt}
\usepackage{scrpage2}
\pagestyle{scrheadings}
\newcommand{\appendixString}{Appendix \thechapter: }
\newcommand{\addappendix}[1]{%
\refstepcounter{chapter}
\addchap{\appendixString #1}%
\ihead{\appendixString #1}%
}
\begin{document}
\tableofcontents
\chapter{Bla}
\chapter{Bla Bla}
\appendix
\addappendix{test 1}\label{bla bla}
\addappendix{test 2}\label{bla}
\end{document}
\appendix
无论如何,重新定义都不是最好的选择。
答案2
不要在 \addchap 的参数中设置计数器。
\documentclass{scrreprt}
\usepackage{scrpage2}\pagestyle{scrheadings}
\newcounter{chapterCounter}
\newcounter{rsss}
\DeclareRobustCommand{\appendix}[2]{%
\clearpage
\setcounter{rsss}{\value{chapter}}%
\addtocounter{rsss}{- \value{chapterCounter}}%
\addtocounter{rsss}{1}%
\addchap[Anhang \Alph{rsss} : #1]{Anhang \Alph{rsss} : #1}\label{#2}
\ihead{%
Appendix \Alph{rsss} : #1
}%
\stepcounter{chapter}
}
\begin{document}
\tableofcontents
\chapter{ Bla}
\chapter{ Bla Bla}
\appendix{test 1}{bla bla}
\appendix{test 2}{bla}
\end{document}
(我不明白为什么您要使用所有这些附加计数器,为什么不使用 KOMA 脚本提供的章节前缀,以及为什么在文本中使用“Anhang”,但在标题中使用“Appendix”但没有更改代码的这一部分。)