Titel mit Linien umranden

Layout von Seiten, Rändern, Fusszeilen, usw, modifizieren


MBE
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: So 5. Apr 2026, 17:49

Titel mit Linien umranden

Beitrag von MBE »

Hallo,
Ich versuche nun schon seit Tagen, meine Titel (chapter, section und subsection Überschriften) mit 2 Linien zu umranden... Ansich vermutlich nichts besonderes, dafür gibt es sicher eine praktikable Lösung, wenn man sie denn kennt. Ich habe es jetzt mit titlesec versucht, leider vergebens. Ich bekomme die Linien hin, aber entweder stehen sie mit dem Label (Abschnittsnummer) in einer Zeile, oder das Label steht über den Linien. Langsam steigt mir die Galle hoch... Ich habe jetzt noch mit KI-Unterstützung versucht das Problem zu lösen... das Ergebnis waren 3 Stunden versenkt und kein nennenswerter Output. Ich habe mein Minimalbeispiel hier dranngehängt.
\documentclass[fontsize=12pt,paper=a4,open=any,parskip=half,twoside=false,toc=listof,toc=bibliography,fleqn,leqno,captions=nooneline,captions=tableabove,british]{scrbook}
\usepackage[utf8]{inputenc} % load early
\usepackage[T1]{fontenc} % load early
\usepackage{titlesec}
\usepackage[ngerman,main=british]{babel}
\usepackage[autostyle=true]{csquotes}
\usepackage{graphicx, booktabs, float, scrhack}
\usepackage{amsmath,amssymb}
\usepackage{pdfpages}
%\usepackage[headsepline=0.005pt:,footsepline=0.005pt:,plainfootsepline,automark]{scrlayer-scrpage}
\usepackage[backend=biber,style=verbose,sortcase=false,language=british]{biblatex}
\usepackage{{scrlayer-scrpage}}
\usepackage{xcolor}

\definecolor{mycolor}{RGB}{0,90,150}

\makeatletter
%\addbibresource{thesis.bib}

% =====================
% CHAPTER
% =====================
\titleformat{\chapter}[display]
	{\normalfont\sffamily}
	{\thechapter}
	{2pt}
	{\titlerule\vspace{1ex}}
	[\vspace{1ex}\titlerule]


% =====================
% SECTION
% =====================
\titleformat{\section}[display]
	{\normalfont\sffamily}
	{\thesection}
	{2pt}
	{\titlerule\vspace{1ex}}
	[\vspace{1ex}\titlerule]

% =====================
% SUBSECTION
% =====================
\titleformat{\subsection}[display]
	{\normalfont\sffamily}
	{\thesubsection}
	{2pt}
	{\titlerule\vspace{1ex}}
	[\vspace{1ex}\titlerule]

\makeatother
	
	
\PassOptionsToPackage{hyphens}{url}

\usepackage[hidelinks]{hyperref} % load late

\clearpairofpagestyles
\ohead[]{\headmark} \ofoot[\pagemark]{\pagemark}
%\ModifyLayer[addvoffset=-.6ex]{scrheadings.foot.above.line}
%\ModifyLayer[addvoffset=-.6ex]{plain.scrheadings.foot.above.line}
%\setkomafont{pageheadfoot}{\small}

\newcommand{\RM}[1]{\MakeUppercase{\romannumeral #1{}}}
%\captionsetup{justification=centering}


\begin{document}
\begin{titlepage}
	Masterthesis MBE\\
	tilepage to be replaced by official one


\end{titlepage}
\frontmatter % only if you need page numbering roman
\pagenumbering{Roman}




\chapter*{Preface, Dedication, Acknowlegdement}
test
\pagebreak
\chapter*{Abstract}
test
\pagebreak
\chapter*{Zusammenfassung}
test
\pagebreak
\mainmatter
\chapter{Erstere teil}
test
\pagebreak
\section{Erstere teil,ersterUnterteil}
test
\pagebreak
\subsection{Erstere teil,ersterUnterteil,ersterUnterunterteil}
test
\pagebreak
\chapter{Zweiter Teil}
test
\pagebreak
\section{Zweiter Teil,ersterUnterteil}
test
\pagebreak
\subsection{Zweiter Teil,ersterUnterteil,ersterUnterunterteil}
test
\pagebreak
\end{document}
Ich bin mir sicher, dass es dafür eine elegante einfache Lösung gibt. Ich kenne sie nur nicht.

KOMA-Script-Anwender

Re: Titel mit Linien umranden

Beitrag von KOMA-Script-Anwender »

Schau mal bezüglich der Verwendung von titlesec in die log-Datei. Die Warnung dort gibt auch Hinweise auf Befehle, die man stattdessen verwenden sollte.

Für \chapter gibt es eine fertige Lösung im KOMA-Script-Wiki: https://sourceforge.net/p/koma-script/wiki-de/HowTo_ChapterWithLines/

inputenc brauchst du übrigens schon seit Jahren nicht mehr. Und beim Laden von scrlayer-scrpage ist ein Klammerpaar zuviel.

Frohe Ostern!

MBE
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: So 5. Apr 2026, 17:49

Re: Titel mit Linien umranden

Beitrag von MBE »

Danke das hat dann schon einmal schwer geholfen... Ich wusste es gibt eine ordentliche Lösung, jetzt brauch ich das gleiche noch für sections und subsections... Die Farbe, die Lage udgl. der Linien habe ich hinbekommen, aber da ich nicht ganz verstehe wie die renewcommand syntax funktioniert stehe ich bei meinem Versuch die funktionierende Lösung von chapters auf sections und subsections umzulegen ein bisschen am Schlauch.
\renewcommand*{\chapterlinesformat}[3]{%
  \Ifstr{#1}{chapter}{%
    \textcolor{rulecolor1}{\rule[-5bp]{\linewidth}{0.005bp}}\par\nobreak
  }{}%
  \@hangfrom{#2}{#3}%
  \Ifstr{#1}{chapter}{%
    \textcolor{rulecolor1}{\rule[10bp]{\linewidth}{0.005bp}}\par\nobreak
  }{}%
}
\renewcommand*{\chapterlineswithprefixformat}[3]{%
  \Ifstr{#1}{chapter}{%
    \rule[0.1\baselineskip]{\linewidth}{0.5pt}\par\nobreak
  }{}%
  #2#3%
  \Ifstr{#1}{chapter}{%
    \rule[0.1\baselineskip]{\linewidth}{0.5pt}\par\nobreak
  }{}%
}
Mir ist mittlerweile klar dass die Zeile @hangfrom{#2}{#3} den eigentlichen Text dorthin "hängt" wo er laut Typografie hin soll...
Mir ist auch klar dass jeder renewcommand für eine Möglichkeit des Kapitels steht... erstere für Kapitel mit Nummerierung, zweiteres für Kapitel mit unterdrückter Nummerierung.

Das If-Statement mit Stringvergleich (denke ich zumindest) hab ich auch entschlüsselt...
Dh. steht da dann sinngemäß:
"Wenn #1 chapter Dann Linie(parameter)"
"Hänge #2 #3"
"Wenn #1 chapter Dann Linie(parameter)"

Was ich nicht verstehe... Die Linien werden immer richtig gezeichnet, auch wenn die Kapitel keine Nummerierung haben... kann ich dann den Teil mit \chapterlineswithprefixformat einfach weglassen?

Was bedeuten #1 #2 #3 ... sind das Parameter? Die Parameter {Ebene}{Nummer}{Text}?
Dh. Ebene wäre Chapter, Section usw. Nummer ist vermutlich die Nummerierung und Text wäre dann der Text... aber warum funktioniert dass dann nicht mit sectionlinesformat?

Das hat 4 Parameter... der zweite gibt mir Rätsel auf... Einzug ist ja eine verschiebung. Die sollte 0 sein. Da sie das nicht ist ist die untere linie seitlich versetzt. Wo/Wie kann ich den Wert vorgeben? Wenn ich den Parameter übergehe (auslasse) wird der Text nach dem ersten Wort in eine neue Zeile geschoben, wenn ich hspace verwende detto, wenn ich hspace* verwende dann nicht... die Linie ist immer versetzt.
\renewcommand{\sectionlinesformat}[4]{%
	\Ifstr{#1}{section}{%
	%\hspace{#2}%
	\textcolor{rulecolor1}{\rule[-5bp]{\linewidth}{0.005bp}}\par\nobreak}{}%
	\@hangfrom{#3}{#4}%
	\Ifstr{#1}{section}{%
	%\hspace{#2}%
	\textcolor{rulecolor1}{\rule[-15bp]{\linewidth}{0.005bp}}\par\nobreak}{}%
}
Hier mein verwendetes Beispiel:
\documentclass[fontsize=12bp,paper=a4,open=any,parskip=half,twoside=false,toc=listof,toc=bibliography,fleqn,leqno,captions=nooneline,captions=tableabove,british]{scrbook}
\usepackage[utf8]{inputenc} % load early
\usepackage[T1]{fontenc} % load early
%\usepackage{titlesec}
\usepackage[scaled]{uarial}
\usepackage[ngerman,main=british]{babel}
\usepackage[autostyle=true]{csquotes}
\usepackage{graphicx, booktabs, float, scrhack}
\usepackage{amsmath,amssymb}
\usepackage{pdfpages}
\usepackage[a-3a]{pdfx}
\usepackage[footsepline=0.005pt:,plainfootsepline]{scrlayer-scrpage}
\usepackage[backend=biber,style=verbose,sortcase=false,language=british]{biblatex}
%\usepackage{scrlayer-scrpage}
\usepackage{xcolor}

\definecolor{rulecolor1}{RGB}{191,191,191}
\renewcommand{\familydefault}{\sfdefault}


\addtokomafont{chapter}{\bfseries\Large}

\title{der titel dieser arbeit}
\author{Markus Beschliesser}

\makeatletter
%\addbibresource{thesis.bib}

% =====================
% CHAPTER
% =====================
\renewcommand*{\chapterlinesformat}[3]{%
  \Ifstr{#1}{chapter}{%
    \textcolor{rulecolor1}{\rule[-5bp]{\linewidth}{0.005bp}}\par\nobreak
  }{}%
  \@hangfrom{#2}{#3}%
  \Ifstr{#1}{chapter}{%
    \textcolor{rulecolor1}{\rule[10bp]{\linewidth}{0.005bp}}\par\nobreak
  }{}%
}
\renewcommand*{\chapterlineswithprefixformat}[3]{%
  \Ifstr{#1}{chapter}{%
    \rule[0.1\baselineskip]{\linewidth}{0.5pt}\par\nobreak
  }{}%
  #2#3%
  \Ifstr{#1}{chapter}{%
    \rule[0.1\baselineskip]{\linewidth}{0.5pt}\par\nobreak
  }{}%
}

% =====================
% SECTION
% =====================
\renewcommand{\sectionlinesformat}[4]{%
	\Ifstr{#1}{section}{%
	%\hspace{#2}%
	\textcolor{rulecolor1}{\rule[-5bp]{\linewidth}{0.005bp}}\par\nobreak}{}%
	\@hangfrom{#3}{#4}%
	\Ifstr{#1}{section}{%
	%\hspace{#2}%
	\textcolor{rulecolor1}{\rule[-15bp]{\linewidth}{0.005bp}}\par\nobreak}{}%
}

%\renewcommand*{\sectioncatchphraseformat}[3]{%
%  \Ifstr{#1}{section}{%
%    \rule[0.1\baselineskip]{\linewidth}{0.5pt}\par\nobreak
%  }{}%
%  #2#3%
%  \Ifstr{#1}{section}{%
%    \rule[0.1\baselineskip]{\linewidth}{0.5pt}\par\nobreak
%  }{}%
%}
%\titleformat{\section}[display]
%	{\normalfont\sffamily}
%	{\thesection}
%	{2pt}
%	{\titlerule\vspace{1ex}}
%	[\vspace{1ex}\titlerule]

% =====================
% SUBSECTION
% =====================
%\titleformat{\subsection}[display]
%	{\normalfont\sffamily}
%	{\thesubsection}
%	{2pt}
%	{\titlerule\vspace{1ex}}
%	[\vspace{1ex}\titlerule]

\makeatother
	
	
\PassOptionsToPackage{hyphens}{url}


\clearpairofpagestyles
\rofoot[\textsf{Page \pagemark}]{\textsf{Page \pagemark}}
\lofoot[\textsf{Title}]{\textsf{Title}}
%\ModifyLayer[addvoffset=-.6ex]{scrheadings.foot.above.line}
%\ModifyLayer[addvoffset=-.6ex]{plain.scrheadings.foot.above.line}
\setkomafont{pageheadfoot}{\footnotesize}

\newcommand{\RM}[1]{\MakeUppercase{\romannumeral #1{}}}
%\captionsetup{justification=centering}

\begin{document}
\begin{titlepage}
	Masterthesis MBE\\
	tilepage to be replaced by official one


\end{titlepage}
\frontmatter % only if you need page numbering roman
\pagenumbering{Roman}


\tableofcontents

\chapter*{Preface, Dedication, Acknowlegdement}
test
\pagebreak
\chapter*{Abstract}
test
\pagebreak
\chapter*{Zusammenfassung}
test
\pagebreak
\mainmatter
\chapter{Erstere teil}
test
\pagebreak
\section{Erstere teil,ersterUnterteil}
test
\pagebreak
\subsection{Erstere teil,ersterUnterteil,ersterUnterunterteil}
test
\pagebreak
\chapter{Zweiter Teil}
test
\pagebreak
\section{Zweiter Teil,ersterUnterteil}
test
\pagebreak
\subsection{Zweiter Teil,ersterUnterteil,ersterUnterunterteil}
test
\pagebreak
\end{document}[\code]

KOMA-Script-Anwender

Re: Titel mit Linien umranden

Beitrag von KOMA-Script-Anwender »

Die Unterschiede zwischen den Befehlen und die Bedeutung der Argumente sind in der Anleitung zu finden. Einfach nachlesen. Dein Einzug konfiguriert man über \RedeclareSectionCommand. Siehe auch dazu die Anleitung.
\renewcommand{\sectionlinesformat}[4]{% #1 = Befehlsname, #2 = horizontaler Einzug, #3 = Nummer, #4 = Text
	\Ifstr{#1}{section}{%
	  \textcolor{rulecolor1}{\rule[-5bp]{\linewidth}{0.005bp}}\par\nobreak}{}%
	\@hangfrom{\hskip #2#3}{#4}%
	\Ifstr{#1}{section}{%
	  \vskip-\baselineskip\nobreak\textcolor{rulecolor1}{\rule{\linewidth}{0.005bp}}\par\nobreak}{}%
}
Sollte tun, was du möchtest. Ich empfehle übrigens, (hier) kein uarial zu verwenden. Das entsprechende Paket ist im Online-Editor AFAIK nicht installiert und außerdem ist der Font noch schlechter als Original-Arial, welches selbst schon ein (eher wenig guter) Helvetica-Abklatsch ist.

Es sei darauf hingewiesen, dass das \vskip auch ein \par enthält. Wenn man also den \vskip entfernt, muss man zumindest ein \par ergänzen, sonst ist man an der Stelle AFAIR noch im horizontalen Modus, die Linie würde also direkt hinter der Überschrift begonnen werden.

Antworten