Für unsere Experimentieranleitungen benötigen wir auf der ersten Seite einen größeren header. Weil das nicht so einfach umzusetzen ist, binde ich mithilfe scrlayer-scrpage den Header in den "headsepline-Layer" ein. Das Ganze wird als eigene Seitenstil für die erste Seite genutzt.

Nicht schön, aber es klappt. Nun habe ein "Problem" mit der eigentlichen headsepline. Diese schalte ich auf der ersten Seite durch \KOMAoptions{headsepline=false} aus. Das hat zur Folge, dass \GetLayerContents{scrheadings.head.below.line} nicht mehr funktioniert. Daher füge ich manuell eine headsepline mit \rule{\layerwidth}{0.4pt} hinzu. Diese Vorgehensweise finde ich weniger praktisch.

Gibt es eine Möglichkeit, die erste headsepline auszuschalten und gleichzeitig \GetLayerContents{scrheadings.head.below.line} zu nutzen? (Im MWE habe ich die erste headsepline wieder eingeschaltet.)

Hintergrund ist, dass ich ja eventuell die thickness der headsepline ändern möchte, dann muss ich es händisch in der Layer-Definition ebenfalls ändern.

Öffne in Overleaf
\documentclass[
paper=a4,
fontsize=12pt,
headings=small,
parskip=half,
draft=false,
]{scrartcl}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern}
\usepackage{microtype}

\usepackage{mwe}

\usepackage{geometry}
\geometry{a4paper,hmargin={2cm,1.5cm},vmargin={1.5cm,2.5cm}}

\usepackage{tabu}

\usepackage[%
headsepline,
footsepline,
]{scrlayer-scrpage}
\clearpairofpagestyles

%neue scrheadings-Definition
\ihead{Thema}
\ohead{Versuch}
\ifoot{Lehrer}
\ofoot{Schule}
\pagestyle{scrheadings}

% eigener Style für die erste Seite
\newpairofpagestyles{ersteseite}{
%
%=======================
%\KOMAoptions{headsepline=false} %keine headsepline, wird manuell im DeclareNewLayer hinzugefügt
%=======================
%
\ofoot{Lehrer}
\ifoot{Schule}
}
% eigene Ebene für den header
\DeclareNewLayer[
background,
clone=scrheadings.head.below.line, % füge header als headsepline ein, damit genüg Platz ist
contents={%
        \begin{tabu} to \layerwidth {X[1.3,l]X[0.3,c]X[1.3,r]}
            Schule  & & Mechanikpraktikum \\[1ex]
            \textbf{\large Versuch} & & \textbf{\large Versuchsname} \\[1ex]
            Name:~ & Gruppe:~ & Klasse:~~~~~~~~~~~~~~~
        \end{tabu}
        \rule{\layerwidth}{0.4pt} %manuelle headsepline
%       \GetLayerContents{scrheadings.head.below.line} % eigentliche headsepline, aber durch \KOMAoptions{headsepline=false} keine Funktion
}]{ersteseite.head}
\AddLayersToPageStyle{ersteseite}{ersteseite.head} % Layer zum Seitenstil hinzufügen
\AtBeginDocument{\vspace*{2.5\baselineskip}} % Text nach unten verschieben, damit header Platz hat

\begin{document}
\thispagestyle{ersteseite}
\blinddocument
\end{document}

gefragt 09 Jun, 05:52

maphy-psd's gravatar image

maphy-psd
346414
Akzeptiert: 77%

bearbeitet 09 Jun, 05:53


So wie Du einen Layer zu einem Seitenstil hinzufügen kannst, kannst Du auch einen entfernen. In Deinem Beispiel wäre das

Öffne in Overleaf
\RemoveLayersFromPageStyle{ersteseite}{ersteseite.head.below.line}

nach dem Erstellen des neuen Seitenstilpaars ersteseite.

Aber eigentlich würde Dir statt einem Paar bereits ein neuer Layer-Seitenstil reichen:

Öffne in Overleaf
\DeclareNewPageStyleByLayers{ersteseite}{}

Der sollte für den Seitenfüß die gleichen Layer enthalten wie scrheadings:

Öffne in Overleaf
\ForEachLayerOfPageStyle*{scrheadings}
  {\ifstrstart{#1}{scrheadings.foot.}{\AddLayersToPageStyle{ersteseite}{#1}}}

Außerdem brauchst Du einen neuen Layer für den Kopf, der höher als der normale Kopfbereich ist und auch entsprechend nach unten verschoben ist:

Öffne in Overleaf
\DeclareNewLayer[
background,
head,
addvoffset=3.5\baselineskip,% Layer nach unten schieben
addheight=3.5\baselineskip,% und vergrößern
contents={%
        \begin{tabu} to \layerwidth {X[1.3,l]X[0.3,c]X[1.3,r]}
            Schule  & & Mechanikpraktikum \\[1ex]
            \textbf{\large Versuch} & & \textbf{\large Versuchsname} \\[1ex]
            Name:~ & Gruppe:~ & Klasse:~~~~~~~~~~~~~~~
        \end{tabu}
}]{ersteseite.head}

Jetzt wird noch ein Layer mit der nach unten verschobenen Linie gebraucht:

Öffne in Overleaf
\DeclareNewLayer[
clone=scrheadings.head.below.line,% Layer clonen
addvoffset=3.5\baselineskip% und nach unten verschieben
]{ersteseite.head.below.line}

Und diese beiden Layer müssen dem Seitenstil ersteseite hinzugefügt werden:

Öffne in Overleaf
\AddLayersToPageStyle{ersteseite}
  {ersteseite.head,ersteseite.head.below.line}% Layer zum Seitenstil hinzufügen

alt text

Code:

Öffne in Overleaf
\documentclass[
paper=a4,
fontsize=12pt,
headings=small,
parskip=half,
draft=false,
]{scrartcl}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern}
\usepackage{microtype}

\usepackage{mwe}

\usepackage{geometry}
\geometry{a4paper,hmargin={2cm,1.5cm},vmargin={1.5cm,2.5cm}}

\usepackage{tabu}

\usepackage[%
headsepline,
footsepline,
]{scrlayer-scrpage}
\clearpairofpagestyles

%neue scrheadings-Definition
\ihead{Thema}
\ohead{Versuch}
\ifoot{Lehrer}
\ofoot{Schule}

% eigener Style für die erste Seite
\DeclareNewPageStyleByLayers{ersteseite}{}
% Fuß von scrheadings für ersteseite übernehmen
\ForEachLayerOfPageStyle*{scrheadings}
  {\ifstrstart{#1}{scrheadings.foot.}{\AddLayersToPageStyle{ersteseite}{#1}}}

% eigene Ebene für den header von ersteseite
\DeclareNewLayer[
background,
head,
addvoffset=3.5\baselineskip,% Layer nach unten schieben
addheight=3.5\baselineskip,% und vergrößern
contents={%
        \begin{tabu} to \layerwidth {X[1.3,l]X[0.3,c]X[1.3,r]}
            Schule  & & Mechanikpraktikum \\[1ex]
            \textbf{\large Versuch} & & \textbf{\large Versuchsname} \\[1ex]
            Name:~ & Gruppe:~ & Klasse:~~~~~~~~~~~~~~~
        \end{tabu}
}]{ersteseite.head}
\DeclareNewLayer[
clone=scrheadings.head.below.line,% Layer clonen
addvoffset=3.5\baselineskip% und nach unten verschieben
]{ersteseite.head.below.line}
\AddLayersToPageStyle{ersteseite}
  {ersteseite.head,ersteseite.head.below.line}% Layer zum Seitenstil hinzufügen

\AtBeginDocument{\vspace*{2.5\baselineskip}} % Text nach unten verschieben, damit header Platz hat
\begin{document}
\thispagestyle{ersteseite}
\blinddocument
\end{document}
Permanenter link

beantwortet 09 Jun, 13:12

esdd's gravatar image

esdd
15.1k53652

Danke! Deine Variante ist schöner. War mein erster Versuch mit den Layers aus scrlayer-scrpage. Ein ziemlich nützliches Werkzeug.

(10 Jun, 09:08) maphy-psd
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×9

Frage gestellt: 09 Jun, 05:52

Frage wurde angeschaut: 172 Mal

Zuletzt aktualisiert: 10 Jun, 09:08