Latex - Textformatierung (Seitenzahlen, Überschriften)

E

etienne

Hallo,

angeregt durch die Diskussion über Latex, Word und Co. habe ich mich auch ein Wenig mit Latex beschäftigt.

Bislang klappt auch das Meiste ziemlich gut. Leider bin ich aber auf zwei kleinere Probleme gestoßen.

Genutzt wird als Stilvorlage jura.cls ("normale" Seiten im frontmatter, römisch gezählt; breiter Rand im mainmatter, arabisch gezählt).


1.
Die Seitenzahl erscheint im Standard-Setup unten in der Mitte.
Bei mir soll sie unten rechts erscheinen.
Dazu nutze ich folgende Befehle:

\usepackage{scrpage2}
\pagestyle{scrheadings}
\clearscrheadings %Kopf- und Fußzeilen werden gelöscht
\ofoot{\pagemark} %in der Fußzeile wird außen rechts die Seitenzahl angezeigt

Im mainmatter (breiter Rand, arabisch gezählt) funktioniert das problemlos, im frontmatter jedoch nicht (die Seitenzahlen bleiben - bis auf Seite III, die wie gewünscht gesetzt wird - in der Mitte).
Woran liegt das und wie kann ich es ändern?


2.
Der Abstand vor und nach den Überschriften im frontmatter ist ziemlich groß. (Gemeint sind die chapter Überschriften "Inhaltsverzeichnis", "Literaturverzeichnis" und "Sachverhalt").
Wie kann ich diese Abstände verkleinern?

Die Seitenränder rundherum konnte ich einfach durch Ändern der Werte in der jura.cls anpassen, die Abstände vor den chapters werden jedoch dort nicht definiert. Aus welchen Dateien nimmt Latex die Abstände für chapter bzw. wie kann ich die einfach ändern?



Danke und beste Grüße,
Etienne.
 
etienne schrieb:
Aus welchen Dateien nimmt Latex die Abstände für chapter bzw. wie kann ich die einfach ändern?

In jura.cls steht der Befehl:
\LoadClass[a4paper,12pt]{report}
das heisst, dass alles, was in jura.cls nicht eigens festgelegt ist, von der Klasse "report" übernommen wird.

Hast du schon \vspace{...} probiert? (... wird durch den gewünschten vertikalen Abstand ersetzt, zB 1cm; die Zahl kann auch negativ sein)
Ich habe eben verschiedene meiner Dokumente durchgesehen und festgestellt, dass ich mal mit \vspace*{-50pt} einen kleineren Abstand am Anfang eines Dokuments erzwungen habe.

Über die Eigentümlichkeit bei der Seitennummerierung habe ich noch nicht nachgedacht - kann aber später noch beim Knobeln helfen.

Gruss, neptun
 
In der report.cls sind folgende Zeilen zu finden, die sich dann wohl um das Aussehen der chapter kümmern:

Code:
\newcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
                    \thispagestyle{plain}%
                    \global\@topnum\z@
                    \@afterindentfalse
                    \secdef\@chapter\@schapter}
\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
                         \refstepcounter{chapter}%
                         \typeout{\@chapapp\space\thechapter.}%
                         \addcontentsline{toc}{chapter}%
                                   {\protect\numberline{\thechapter}#1}%
                    \else
                      \addcontentsline{toc}{chapter}{#1}%
                    \fi
                    \chaptermark{#1}%
                    \addtocontents{lof}{\protect\addvspace{10\p@}}%
                    \addtocontents{lot}{\protect\addvspace{10\p@}}%
                    \if@twocolumn
                      \@topnewpage[\@makechapterhead{#2}]%
                    \else
                      \@makechapterhead{#2}%
                      \@afterheading
                    \fi}
\def\@makechapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright \normalfont
    \ifnum \c@secnumdepth >\m@ne
        \huge\bfseries \@chapapp\space \thechapter
        \par\nobreak
        \vskip 20\p@
    \fi
    \interlinepenalty\@M
    \Huge \bfseries #1\par\nobreak
    \vskip 40\p@
  }}
\def\@schapter#1{\if@twocolumn
                   \@topnewpage[\@makeschapterhead{#1}]%
                 \else
                   \@makeschapterhead{#1}%
                   \@afterheading
                 \fi}
\def\@makeschapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \Huge \bfseries  #1\par\nobreak
    \vskip 40\p@
  }}

Wenn ich nun die Zahlen nach vspace bzw. vskip direkt in der report.cls ändere, müssten sich doch auch die Abstände in meinem Dokument ändern, oder?

Leider funktioniert das so nicht.
 
Ich habe leider noch nicht viel Übung beim diesen Sachen ...
Aber gib folgenden Suchbegriff mal in google ein
\vspace*{50\p@}
so findest du Lösungen für ganz ähnliche Probleme.
Auf etlichen dieser Seiten wird vorgeschlagen, "report" intakt zu lassen und mit \renewcommand zu arbeiten.

Gruss, neptun
 
Vielen Dank für deine Hinweise; das 2. Problem ist jetzt gelöst.

Durch Einfügen folgenden Codes vor \begin{document} wird die Erstellung von chapter neu definiert:

Code:
\makeatletter
\def\@makeschapterhead#1{%
  \vspace*{50\p@}%       % 50 = Abstand vor chapter
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \Huge \bfseries  #1\par\nobreak 
    \vskip 40\p@		% 40 = Abstand nach chapter
  }}
\makeatother

Durch Anpassen der kommentierten Zahlen kann man die Abstände verändern. Das funktioniert jetzt auch ohne Probleme.

Beste Grüße,
Etienne.
 
Ok, jetzt habe ich das Problem mit den Seitenzahlen gelöst:

Latex definiert Seiten mit chapter automatisch auf thispagestyle{plain}. Bei plain steht die Seitenzahl unten in der Mitte. "Inhaltsverzeichnis", "Sachverhalt" und "Literaturverzeichnis" sind jeweils chapter, die folglich auf plain stehen und bei denen die Seitenzahl damit unten in der Mitte ist.

Die Ausnahme auf Seite III kommt dadurch, dass das die 2. Seite des Sachverhalts ist, auf der kein chapter benannt wird (Das Wort "Sachverhalt", das ein chapter ist, steht ja nur auf Seite II).

Um die Seitenzahl nun überall rechts unten hinzubekommen, muss das plain wegdefiniert werden. Dazu gibt es verschiedene Möglichkeiten:

In die Preamble wird Folgendes eingefügt:

Code:
\usepackage{fancyhdr}   
\pagestyle{fancy}
\fancypagestyle{plain}{\fanyhf{}}      %plain wird umdefiniert, sodass keine Kopf- und Fußzeilen ausgegeben werden
\fancyhf{}                             %Kopf- und Fußzeilen werden gelöscht
\rfoot{\thepage}                       %Seitenzahl kommt unten rechts hin
\renewcommand{\headrulewidth}{0pt}     %Trennungslinie der Kopfzeile wird entfernt
\renewcommand{\footrulewidth}{0pt}     %Trennungslinie der Fußzeile wird entfernt

Mit dem Befehl \fancypagestyle gab es irgendwelche Probleme: Latex hat beim Compilieren Fehlermeldungen gebracht. Funktioniert hat es aber trotzdem.

Da mich die Fehlermeldungen störten, habe ich weiter probiert:

\fancypagestyle wird weggelassen, der Rest bleibt. Dafür kommt aber hinter \begin{sachverhalt}, \bibliography sowie \tableofcontents jeweils der Befehl \thispagestyle{fancy}. Dadurch wird die jeweils aktuelle Seite von plain auf fancy umgestellt und die oben genannten Fancy-Regeln gelten.

Auf diese Weise funktioniert das Ganze ohne Probleme und Fehlermeldungen.

Dann gibt es aber noch eine Möglichkeit, die ich jetzt nutze:

Anstelle des oben Genannten, kommen folgende Zeilen in die Preamble:

Code:
\usepackage{scrpage2}
\pagestyle{scrheadings}
\clearscrheadfoot     %Kopf- und Fußzeile werden gelöscht
\ofoot{\pagemark}     %Seitenzahl wird in die Fußzeile außen geschrieben

Dazu kommt dann, das jeweils hinter \begin{sachverhalt}, \bibliography sowie \tableofcontents der Befehl \thispagestyle{scrheadings} geschrieben wird.

Auch diese Möglichkeit funktioniert ohne Probleme.

Gruß,
Etienne.

PS: Die Kontrollmöglichkeiten bei Latex sind faszinierend. :D
 
etienne schrieb:
PS: Die Kontrollmöglichkeiten bei Latex sind faszinierend. :D

Ja, wenn man soviel Ahnung hat, wie Du scheinbar :(
 
etienne schrieb:
Ok, jetzt habe ich das Problem mit den Seitenzahlen gelöst:
...
Gruß,
Etienne.
PS: Die Kontrollmöglichkeiten bei Latex sind faszinierend. :D
Ich freue mich mit dir, dass alles jetzt klappt :)
Ist halt klar, dass es ein ganz klein bisschen kompliziert wird, wenn man an sich an der Feinsteuerung beteiligen möchte, so wie du jetzt.
Wo schreibst du den zusätzlichen Code hin: ins Dokument, in ein .sty, .clo oder .cls?

j-man schrieb:
Ja, wenn man soviel Ahnung hat, wie Du scheinbar :(
Nicht traurig sein - wie bei allem kann man sich die "Ahnung" mit kleinen Schritten erwerben. Bei LaTeX sind die online-Informationsmöglichkeiten besonders zahlreich, da diese Leute dem web besonders nahe stehen und viel publizieren.
Das LaTeX-Forum auf mrunix.de ist auch sehr empfehlenswert.
 
neptun schrieb:
Ich freue mich mit dir, dass alles jetzt klappt :)
Ist halt klar, dass es ein ganz klein bisschen kompliziert wird, wenn man an sich an der Feinsteuerung beteiligen möchte, so wie du jetzt.
Wo schreibst du den zusätzlichen Code hin: ins Dokument, in ein .sty, .clo oder .cls?

Ich freue mich auch darüber. :D

Den zusätzlichen Code habe ich direkt ins Dokument geschrieben, damit mir der Überblick nicht verlorengeht, wenn ich zu viele kleine Dateien verwalte (was ja so nicht der Fall ist).
 
j-man schrieb:
Ja, wenn man soviel Ahnung hat, wie Du scheinbar :(

Ich habe den oben erwähnten Thread gelesen, mir 2 Bücher bei Amazon Marketplace bestellt (Thomas Demming - Jetzt lerne ich Latex 2e; Elke & Michael Niedermair - Latex Praxisbuch Studienausgabe; - Christine Detigs Buch soll auch sehr gut sein, das werde ich mir nochmal anschauen) und ein wenig reingelesen.

Dann habe ich ein paar PDF Dokumentationen angeschaut (a026.pdf und a027.pdf, die in dem anderen Thread erwähnt wurden; dazu texbuch.pdf, scrguide.pdf, l2kurz.pdf, tex for the impatient.pdf - alle bei ctan erhältlich).

Die Newsgroup de.comp.text.tex und die FAQ dazu (de-tex-faq.pdf) sind auch sehr hilfreich.

Mit den Büchern habe ich am Donnerstag angefangen und am Freitag und Samstag mit Hilfe der PDF und dem Internet kleinere Spezialprobleme gelöst.

Von wirklich Ahnung würde ich nach den paar Tagen noch nicht sprechen. Es funktioniert aber soweit, dass der Text so aussieht, wie ich möchte, und die Literaturverwaltung mit jurabib und Bibtex funktioniert auch.

Wenn du Fragen hast, kannst du die gern hier stellen; bislang war jedenfalls alles lösbar... :)
 
Hallo zusammen,

ich habe mir die online Dokus durchgelesen es hängt aber noch an einer kleine Sache und ich komm einfach nicht weiter.

Ich hab eine doppelseitiges Dokument und Kapitelüberschriften werden in den Kopfzeilen dargestellt, die Seitenzahlen immer in den äußeren Ecken der Fusszeilen.

Nur bei Seiten auf denen ein neues chapter beginnt wird die Seitenzahl noch mittig angezeigt. Ich hab auch mit den Vorschlägen oben rumexperimentiert, leider ohne Erfolg.

Falls jemand gleich weiss was der Fehler ist wäre das großartig!

Hier mal der Code:
Code:
\usepackage{fancyhdr}
\pagestyle{fancy} % Eigene Konfig

\renewcommand{\headrulewidth}{0pt} % Unterdrückt die Linie im Kopfteil
\fancyhf{} % Alle zurücksetzen


\fancyhead[OL]{\leftmark}
\fancyhead[ER]{\rightmark}
\fancyfoot[OL]{\thepage} % ungerade Seiten
\fancyfoot[ER]{\thepage} % gerade Seiten
 
Also, der Chapter-Befehl setzt für die Seite, auf der das neue Kapitel beginnt, den Seitenstil auf plain, um die Lesbarkeit zu verbessern. Nun kann man entweder hingehen und Chapter-Befehl umdefinieren (nicht zu empfehlen) oder aber, man definiert den Seitenstil plain um (das ist mit dem Paket fancyhdr und dem Befehl fancypagestyle möglich). In deinem Fall sähe das ganze also folgendermaßen aus:

Code:
\usepackage{fancyhdr}

\fancypagestyle{plain}{%
\renewcommand{\headrulewidth}{0pt} % Unterdrückt die Linie im Kopfteil
\fancyhf{} % Alle zurücksetzen
\fancyhead[OL]{\leftmark}%
\fancyhead[ER]{\rightmark}%
\fancyfoot[OL]{\thepage} % ungerade Seiten
\fancyfoot[ER]{\thepage}} % gerade Seiten

\pagestyle{plain}

\pagestyle{plain} muss dabei nach der Neudefinition aufgerufen werden, \pagestyle{fancy} ist dann natürlich überflüssig.
 
Juhu, es hat funktioniert! Herzlichen Dank StarSirius, da wäre ich nie draufgekommen! Gott bin ich froh! Danke Danke Danke!
 
Zurück
Oben Unten