*Die in diesem Beitrag beschriebene Lösung sollte ab KOMA-Script 3.19 nicht mehr verwendet werden. Sie stellt lediglich eine Notlösung für ältere Versionen von KOMA-Script dar!*
Man sollte es kaum für möglich halten, aber die Schnittstelle zur Schriftumschaltung bei KOMA-Script gibt das tatsächlich her. Man kann nämlich bei den meisten Elementen als letzten Befehl auch einen Befehl angeben, der ein Argument erwartet:
\documentclass{scrartcl}
\usepackage{xcolor}
\usepackage[ngerman]{babel}
\usepackage{selinput}
\SelectInputMappings{
adieresis={ä},
germandbls={ß},
}
\usepackage{blindtext}
\newsavebox\cbgbox
\newcommand*{\colorbackground}[1]{%
\sbox\cbgbox{\color{white}\ignorespaces#1}%
\ifdim\wd\cbgbox>\linewidth
\colorbox{blue!70}{%
\parbox[t]{\linewidth}{\color{white}\ignorespaces#1}%
}%
\else
\colorbox{blue!70}{\usebox\cbgbox}%
\fi
}
\addtokomafont{section}{\colorbackground}% ACHTUNG: Muss das letzte
% \addtokomafont{section} sein!
\addtokomafont{subsection}{\colorbackground}% ACHTUNG: Muss das letzte
% \addtokomafont{subsection} sein!
\addtokomafont{subsubsection}{\colorbackground}% ACHTUNG: Muss das letzte
% \addtokomafont{subsubsection} sein!
\addtokomafont{paragraph}{\colorbackground}% ACHTUNG: Muss das letzte
% \addtokomafont{paragraph} sein!
\begin{document}
\title{Farbig hinterlegte Überschriften mit \KOMAScript}
\author{Enrico Saputello}
\maketitle
\begin{abstract}
Dieses Beispiel zeigt, wie man Überschriften bei \KOMAScript{} mit einem
farbigen Hintergrund versehen kann.
\end{abstract}
\section*{Vorwort}% oder auch \addsec
\blindtext
\tableofcontents
\blinddocument
\section{Und dann noch eine mehrzeilige Überschrift als weiteres Beispiel}
\blindtext
\end{document}
Ich habe hier absichtlich nicht das Element `disposition` (oder den Alias `sectioning`) verwendet, weil jenes Element auch noch an anderer Stelle als nur den Überschriften verwendet wird und eventuell auch nicht überall ein Argument erlaubt, weil danach ja noch das Element für die jeweilige Ebene folgt.
Ich habe mir außerdem erlaubt, Dir zu zeigen, dass Du mit `\section*` oder der Sternform einer andere Gliederungsebene `\heading` einsparen kannst.
Die Elemente für die weiteren Gliederungebenen bis hinunter zu `\minisec` sind übrigens der [KOMA-Script-Anleitung][1] zu entnehmen.
Mit dieser Umdefinierung sollte man übrigens die `\label`-Anweisung nicht mehr innerhalb des Arguments der Gliederungsüberschrift, sondern unbedingt danach setzen, weil sie sonst ggf. zweimal ausgeführt wird, wenn die Überschrift länger als eine Zeile ist.
[1]: http://mirrors.ctan.org/macros/latex/contrib/koma-script/doc/scrguide.pdf