PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PdfLatex/Win/Texworks:Leerzeile zwischen Absätzen unterbinden



latexberlin
13-03-2014, 08:38
Guten Morgen,

ich bin Latex-Neuling und habe bisher bei der Suche unter den Stichworten "Leerzeile" und "Latex" meistens Anfragen gefunden, wie zwischen Absätzen eine Leerzeile erzeugt wird.
Mein Problem ist, dass ich gerne diese Leerzeile unterbinden will.

Hier die Dateien:



\documentclass[11pt, a4paper, twoside]{scrbook}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{cite}
\usepackage[numbers,round]{natbib}
\bibliographystyle{plain}

\usepackage{fancyhdr}

\fancyhead{}
\lhead{\leftmark}
\rhead{\thepage}

\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}

\pagestyle{fancy}



\title{Titel}
\author{Autor}
\date{Datum}

\begin{document}

\maketitle
\tableofcontents

%%Vorwort
\include{abschnitte-buch/text1}
\include{abschnitte-buch/text2}

\end{document}


Im Folgenden die erste Datei, die inkluiert wird ("text1.tex"), bei dieser fügt er nach dem Kompilieren keine Leerzeile zwischen den Absätzen ein, sondern rückt den Zeilenanfang nur ein, so wie es sein soll:



%% Vorwort

\chapter*{Vorwort}
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.

At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.

At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.



Beim 2. Text ("text2.tex") fügt zwischen die Absätze jeweils eine Leerzeile ein, es scheint mit den folgenden Sektionsbefehlen zu tun zu haben. Nehme ich diese heraus, verhält er sich wie gewünscht und fügt keine Leerzeile ein:


\chapter{Chapter 1}

\section{Sektion 1}
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.

At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.

At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

\section{Beliebig1}
\section{Beliebig2}
\section{Beliebig3}
\subsection{Beliebig11}
\subsection{Beliebig12}
\subsection{Beliebig13}


Es ist für mich nicht nachvollziehbar, warum Latex das Verhalten bei den Absätzen ändert, wenn weitere Sektionen, Untersektionen folgen.

Vielleicht hat jemand eine Idee, da ich mich schon 2 Tage durch google kämpfe und leider keine Lösung gefunden habe.

Danke!

Gruss, latexberlin

u_fischer
13-03-2014, 09:24
Dein Beispiel zeigt das Verhalten nicht. Aber wenn ich raten muss: LateX streckt die Absatzabstände, weil \flushbottom aktiv ist und es deswegen versucht die Seiten vollständig zu füllen. Meist gibt sich das wieder, wenn mehr Text und nicht nur Überschriften im Dokument sehen. Du kannst ja mal \raggedbottom versuchen, um zu Testen, ob mein Verdacht stimmt.



da ich mich schon 2 Tage durch google kämpfe und leider keine Lösung gefunden habe.

Es ist albern soviel Zeit mit so einem Problem zu verschwenden. Mehr als eine Stunde sollte es nie sein: 30 Minuten Suche, 30 Minuten für die Formulierung einer guten Frage (vollständiges, lauffähiges Minimalbeispiel, das das Problem auch zeigt!) in einem geeigneten Forum.

klops
13-03-2014, 10:56
Dein Beispiel zeigt das Verhalten nicht. Aber wenn ich raten muss: LateX streckt die Absatzabstände, weil \flushbottom aktiv ist und es deswegen versucht die Seiten vollständig zu füllen. Meist gibt sich das wieder, wenn mehr Text und nicht nur Überschriften im Dokument sehen.
Als ergänzende Erklärung: Zwischen unmittelbar aufeinanderfolgenden Überschriften macht LaTeX keinen Seitenumbruch. Damit müssen die ganzen aufeinanderfolgenden Überschriften ggf. notfallmäßig auf die nächste Seite verschoben werden und genau dann spielt der vertikale Ausgleich diesen Streich. Zu erkennen ist das übrigens auch an einer "underfull \vbox"-Warnung von TeX.

Würde man den Absatzabstand nicht variable machen (siehe Option parskip=never in der KOMA-Script-Anleitung (http://mirrors.ctan.org/macros/latex/contrib/koma-script/doc/scrguide.pdf)) würde der Abstand notfallmäßig vor und nach der Kapitelüberschrift eingefügt.

Ich selbst verwende deshalb für die Abschnitte, die noch keinen Text enthalten immer den Dummy-Text: \textsc{Hier fehlt noch der Text.} Auf das Beispiel eingewandt also:

\section{Beliebig1}
\textsc{Hier fehlt noch der Text.}
\section{Beliebig2}
\textsc{Hier fehlt noch der Text.}
\section{Beliebig3}
\textsc{Hier fehlt noch die Einleitung.}
\subsection{Beliebig11}
\textsc{Hier fehlt noch der Text.}
\subsection{Beliebig12}
\textsc{Hier fehlt noch der Text.}
\subsection{Beliebig13}
\textsc{Hier fehlt noch der Text.}


Damit dürfte sich das Problem bereits weitgehend in Wohlgefallen auflösen. Mit der genannten Option kann man dann letzte Überdehungen zwischen den Absätzen beseitigen.

BTW: Zusammen mit der KOMA-Script-Klasse scrbook wäre eher scrpage2 oder das brandneue scrlayer-scrpage an Stelle von fancyhdr zu empfehlen. Die Anleitung zu diesen beiden Paketen ist ebenfalls in der KOMA-Script-Anleitung (http://mirrors.ctan.org/macros/latex/contrib/koma-script/doc/scrguide.pdf) zu finden. Die Anleitung zu scrpage2 ist ebenfalls im KOMA-Script-Buch (http://www.dante.de/index/Literatur/KOMA-Script.html) zu finden, das allerdings scrlayer-scrpage noch nicht behandelt.

Und gerade bei Verwendung von utf8 als Eingabecodierung würde ich Dir unbedingt empfehlen, biblatex (http://www.ctan.org/pkg/biblatex)+biber an Stelle von natbib und bibtex zu verwenden. Gerade, wenn Du noch Anfänger bist, ergibt es eigentlich keinen Sinn, sich erst noch mit natbib und bibtex zu beschäftigen. Die Zeit ist besser in biblatex investiert.

latexberlin
13-03-2014, 12:15
Dein Beispiel zeigt das Verhalten nicht. Aber wenn ich raten muss: LateX streckt die Absatzabstände, weil \flushbottom aktiv ist und es deswegen versucht die Seiten vollständig zu füllen.

Danke, das mit dem Strecken war ein gutes Stichwort, so sah das Bild bei mir auch aus. Ich habe jetzt am Ende des 2. Textes \newpage gesetzt und das Problem tritt nicht mehr auf. Super!


BTW: Zusammen mit der KOMA-Script-Klasse scrbook wäre eher scrpage2 oder das brandneue scrlayer-scrpage an Stelle von fancyhdr zu empfehlen.

Besten Dank. Werde ich mir vormerken und die Tage einen Blick reinwerfen.


Und gerade bei Verwendung von utf8 als Eingabecodierung würde ich Dir unbedingt empfehlen, biblatex (http://www.ctan.org/pkg/biblatex)+biber an Stelle von natbib und bibtex zu verwenden. Gerade, wenn Du noch Anfänger bist, ergibt es eigentlich keinen Sinn, sich erst noch mit natbib und bibtex zu beschäftigen. Die Zeit ist besser in biblatex investiert.

Zu Biblatex hätte ich meine nächste Frage gestellt, da mir die Zitatmöglichkeiten umfassender und flexibler erscheinen. Leider habe ich noch nicht den richtigen Code gefunden, um Biblatex und Biber in Latex 'aktivieren' zu können. Ist für heute Nachmittag angesetzt. Beispielcodes suchen und testen. Falls ich festhänge, werde ich mich nochmal melden.

klops
13-03-2014, 18:03
Für die Verwendung von biblatex muss man dieses Paket (an Stelle von natbib) laden. Außerdem wird \bibliography durch \printbibliography ersetzt und die Datenbank definiert man stattdessen mit \addbibresource. Es gibt hier im Forum diverse Beispiele.

Wie man biber statt bibtex in den Editor einbindet, findet man nach Editor aufgeschlüsselt unter: Wie verwende ich biber in meinem Editor? (http://texwelt.de/wissen/fragen/1909/wie-verwende-ich-biber-in-meinem-editor)

Aber das sollten wir nicht hier weiter diskutieren, sondern ggf. in einem neuen Thema …

latexberlin
13-03-2014, 20:25
Danke! :)

Dank Deinem Link zeigt er jetzt auch das Literaturverzeichnis an. Das wäre das nächste Problem gewesen.