Probleme mit Zeilenabstand und gequetschtem Text Thema ist als GELÖST markiert

Schriftbild, Absätze und Auflistungen einstellen


Gast

Probleme mit Zeilenabstand und gequetschtem Text

Beitrag von Gast »

Liebe Leute,

ich bin gerade dabei ein Buch von rund 100 Seiten in LaTeX zu setzen - habe aber noch wenig Erfahrungen mit Dokumenten dieser Länge. Einige unvorhergesehene Probleme sind aufgetreten, bei denen ich euch um Hilfe und Rat bitten möchte.

Ich habe die Problemstellen in folgender Grafik als Screenshot der PDF-Ausgabe sichtbar gemacht:

[/img]https://ibb.co/f42kL9[/img]

Der Dokumentenoutput gibt übrigens auch verschiedene Warnungen aus, die damit zusammenhängen könnten: "26 zu volle/leere Boxen", "underfull \vbox (badness 1845)", etc.

Hier noch die Grundeinstellungen:
\documentclass[
a5paper,							
%paper=216mm:154mm,
%landscape,						
10pt,								
version=first,
BCOR=15mm,							
DIV=calc,							
{scrbook}

\addtolength{\paperwidth}{6mm}
\addtolength{\evensidemargin}{3mm}
\addtolength{\oddsidemargin}{3mm}
\addtolength{\paperheight}{6mm}
\addtolength{\topmargin}{3mm}

\usepackage{amsmath}
\usepackage[no-math]{fontspec}
\usepackage{realscripts}
\setmainfont{Linux Libertine O}
\setsansfont[BoldFont={* Bold}]{Linux Libertine O}
\setmonofont{Linux Libertine O}
\usepackage{mathspec}
\makeatletter % undo the wrong changes made by mathspec
\let\RequirePackage\original@RequirePackage
\let\usepackage\RequirePackage
\makeatother
\setallmainfonts(Digits){Linux Libertine O}
\usepackage{microtype}

\usepackage{csquotes}

\newcommand{\gnuplotBild}[1]{\hspace{-6mm}\input{#1}}

\AtBeginEnvironment{quote}{\small}
\AtBeginEnvironment{displayquote}{\small}

\usepackage{makeidx}
\usepackage[
	backend=bibtex,
	giveninits=false,
	style=authortitle-ibid,
	maxbibnames=20,
	maxcitenames=1,
	doi=false,
	natbib=true,
	sorting=nty,
	terseinits=false,
	defernumbers=true,
	bibencoding=utf8,
	bibtotoc
]{biblatex}
\usepackage[toc]{glossaries}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage{chngcntr}
\counterwithout{footnote}{chapter}

% Hurenkinder und Schusterjungen verhindern
\clubpenalty10000
\widowpenalty10000
\displaywidowpenalty=10000

%\usepackage{qrcode}
\usepackage{hyperref}

%\makeglossaries
\input{citation-style}
\bibliography{Literatur}
%\input{Abkürzungen}

%\usepackage{inputenc}
\usepackage{graphicx}
%\usepackage[miktex]{gnuplottex}

\newcommand\inputencoding[1]{}

\usepackage{chngcntr}
\counterwithout{figure}{chapter}
\setcapindent{5mm} 
\renewcommand{\thefigure}{\arabic{figure}}
\renewcommand*{\figureformat}{%
  \sffamily{\textbf{\figurename~\thefigure}}%
}
\counterwithout{table}{chapter}
\renewcommand{\thetable}{\arabic{table}}
\renewcommand*{\tableformat}{%
  \sffamily{\textbf{\tablename~\thetable}}%
}
Falls jemand eine Idee hat, wie man diese Probleme abstellen kann, wäre das großartig! :)[/code]

m601
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Mi 29. Aug 2018, 13:53

Beitrag von m601 »

Hier nochmal die Grafik im Anhang (inzwischen bin ich registriert).
Dateianhänge
LaTeX Probleme.png
LaTeX Probleme.png (165.12 KiB) 3259 mal betrachtet

markusv
Forum-Meister
Forum-Meister
Beiträge: 947
Registriert: Do 3. Sep 2015, 17:20
Wohnort: Leipzig

Beitrag von markusv »

Der erste Punkt sieht nach vertikalem Ausgleich aus. LaTeX spreizt die Absatzabstände, um am unteren Seitenrand eine einheitlich Kante (Abschluss des Textes) auf beiden Seiten herzustellen. Dies ist bei zweiseitigem Satz üblich und solltest du so beibehalten.

Die Aufzählung wird wahrscheinlich aufgrund des Wortes "Marxismus-Leninismus" so gedehnt, da LaTeX dieses Wort nicht trennen kann und dementsprechend auf eine neue Zeile setzt. Da du babel mit ngerman nutzt, kannst du mithilfe der babel-shortcuts
Marxismus"=Leninismus
schreiben, um LaTeX zu erlauben, auch innerhalb des Wortes zu trennen und nicht nur am Bindestrich. Ggf. musst du LaTeX noch per
\hyphenation{Le-ni-nis-mus Mar-xis-mus wei-ter-e Trenn-vor-schrif-ten}
in der Präambel mitteilen, welche Trennvorschriften hier gelten.

Beim dritten Punkt bin ich überfragt, ggf. und für alles weitere solltest du ein echtes Minimalbeispiel (Link beachten!) liefern.
Wäre Microsoft Word für das Schreiben von Büchern entwickelt worden,
würde es Microsoft Book heißen.

Unkomplizierte und schnelle LaTeX-Hilfe, bspw. Erstellung von Vorlagen und Bewerbungen.

Gast

Beitrag von Gast »

Ohne den echten Code gesehen zu haben, der die gezeigte Ausgabe erzeugt (ich weiß, Dein Dokument ist lang und es würde etwas dauern, ein Minimalbeispiel zu erzeugen) können wir natürlich nur spekulieren.

Was mir an Deinem Beispielcode aufgefallen ist, ist dass Du eigentlich in der ersten Zeile schon eine Fehlermeldung bekommen solltest. Da hast Du nämlich eine schließende eckige Klammer vergessen. Ferner sollte hyperref (bis auf wenige Ausnahmen) als letztes geladen werden. Nun gut.

Soweit ich weiß kann TeX den vertikalen Abstand zwischen zwei Absätzen etwas in die Länge ziehen, wenn das für den Aufbau der Seite von Vorteil ist. Es kann also gut sein, dass Da ein einigen Stellen ein etwas größerer Abstand auftaucht als an anderen Stellen. Eventuell haben die veränderten Penaltys für die Hurenkinder und Schusterjungen hier auch einen Einfluss (siehe https://tex.stackexchange.com/q/309522/35864 für eine kurze Erläuterung).

Die Sache mit dem itemize sieht mir so aus als könnte LaTeX in "Marxismus-Leninismus" keine Trennstelle finden und es daher nicht umbrechen. Ein bekanntes Problem ist, dass TeX in Worten mit Bindestrich nicht nochmal trennt: https://tex.stackexchange.com/q/2706/35864 Aber selbst, wenn Du hier "= nutzt, kann es sein, dass TeX in den Wörtern keine guten Trennstellen findet. Die müsste man dann eventuell manuell angeben.

Im letzten Bild kann ich jetzt kein großes Problem erkennen. In der Tat scheint im oberen Absatz eher ein recht großer Wortabstand zu sein, während die Wörter im unteren näher zusammen sind. Auch hier kann es an der Worttrennung liegen (die am rechten Rand nicht zu sehen ist), aber ich kann mir auch gut vorstellen, dass die Abstände hier im Rahmen des von LaTeX Erlaubten sind.

m601
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Mi 29. Aug 2018, 13:53

Beitrag von m601 »

Hey!

erstmal danke für die vielen guten Hinweise. Hyperref als letztes zu laden hat z.B. den Compilierungsprozess um einiges schneller gemacht und auch die Warnungen reduziert. Die fehlende Eckige klammer ist nur meinem stümpferhaftem rauskopieren geschuldet ;)

Ja, das mit dem Minimalbeispiel würde glaube ich extremst aufwändig sein und ich fürchte, dass das mit dem restlichen Text und Grafiken zusammenhängt.
Immerhin das Problem mit dem Marxismus-Leninismus-Trennung konnte ich lösen.

Zum letzten Bild: woran könnte der große Wortabstand oben und der sehr geringe unten liegen? Ich meine, das sieht ja doof aus wenn sich das so abschnittsweise hart abgrenzt.

Gast

Beitrag von Gast »

Es ist im letzten Bild leider nicht richtig erkennbar, ob das mit schlechten Trennstellen zu tun hat. Prinzipiell ist es so, dass TeX versucht innerhalb eines Absatzes zu vermeiden, dass eine Zeile mit weiten Abständen auf eine mit sehr engen Abständen trifft. Das führt dazu, dass ein Absatz ein einheitliches Schriftbild hat. Über Absätze hinweg ist es aber durchaus möglich, dass sich ein solcher Effekt einstellt.

Ich weiß nicht, ob es eine Möglichkeit gibt, das abzuschalten und damit LaTeX zu überzeugen auch über Absätze hinweg die Leerräume in den Zeilen näher beisammen zu halten. Ich möchte aber darauf hinweisen, dass es, selbst wenn es möglich ist, unter Umständen nicht die beste Idee ist. Das Setzen des Texts in Zeilen und Absätze ist sehr komplex. Wenn man da an bestimmten Einstellungen herumspielt, muss man damit rechnen, dass an anderer Stelle andere Probleme auftauchen (z.B. mehr overfull oder underfull Boxes, weil TeX jetzt bestimmte Trennstellen nicht mehr nutzen darf, oder erhöhter Vertikaler Leerraum, weil bestimmte Zeilen nicht auf eine neue Seite dürfen...)

Antworten