von QX32 » Fr 4. Okt 2019, 21:07
Liebe LaTeX-Freunde,
ich verwende auf unterschiedlichen Rechnern unterschiedliche Versionen von pdflatex aus dem TeXLive-Paket :
Alte Version 3.14159265-2.6-1.40.16 (TeX Live 2015/Debian) unter Ubuntu 16.04.6 LTS
Neue Version 3.14159265-2.6-1.40.18 (TeX Live 2017/Debian) unter Ubuntu 18.04.3 LTS
Diese beiden pdflatex-Versionen führen bei diesem LaTeX-Code zu deutlich unterschiedlichem Layout:
[code]
\documentclass[]{scrbook}
\usepackage{lipsum}
\author{Author}
\title{Title}
\date{}
\begin{document}
\maketitle
% Tabelle 1
\begin{tabular}{l}
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
\end{tabular}
% Text
\lipsum[1]
% Tabelle 2
\begin{tabular}{l}
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
\end{tabular}
\end{document}
[/code]
Das LaTex-Dokument ist so aufgebaut:
[list=1]
[*] Titelblatt auf Seite 1
[*] Tabelle 1 oben auf Seite 2
[*] Text auf Seite 2 nach Tabelle 1
[*] Tabelle 2 oben auf Seite 3
[/list]
Bei der alten Version folgt der Text direkt auf Tabelle 1 (siehe alt.png). Die neue Version fügt jedoch einen großen Abstand zwischen Tabelle 1 und Text ein (siehe neu1.png). Löscht man Tabelle 2 aus dem LaTeX-Code, generiert die neue Version keinen großen Abstand mehr zwischen Tabelle 1 und Text (siehe neu2.png).
Wie kann ich mit der neuen Version von pdflatex das Layout der alten Version (ungefähr) erhalten, also (i) kein großer Abstand zwischen Tabelle 1 und Text und (ii) Tabelle 2 darf das Layout auf der vorangegangenen Seite nicht beeinflussen?
Eine Einbettung der Tabellen in eine table-Umgebung oder ein Ersetzen von scrbook kommt für mich leider nicht ohne Weiteres in Frage, da der gezeigte Code nur das Problem eingrenzt, das in einem deutlich komplexeren Dokument auftritt. Ideal wäre das Setzen eines globalen Parameters oder der Aufruf von Befehlen vor oder nach den Tabellen.
- Dateianhänge
-
- Seiten 2 und 3 des mit pdflatex Version 3.14159265-2.6-1.40.16 generierten PDFs.
- alt.png (58.42 KiB) 1863 mal betrachtet
-
- Seiten 2 und 3 des mit pdflatex Version 3.14159265-2.6-1.40.18 generierten PDFs.
- neu1.png (53.61 KiB) 1865 mal betrachtet
-
- Seite 2 des mit pdflatex Version 3.14159265-2.6-1.40.18 generierten PDFs ohne Tabelle 2 im LaTex-Code.
- neu2.png (45.97 KiB) 1872 mal betrachtet
Liebe LaTeX-Freunde,
ich verwende auf unterschiedlichen Rechnern unterschiedliche Versionen von pdflatex aus dem TeXLive-Paket :
Alte Version 3.14159265-2.6-1.40.16 (TeX Live 2015/Debian) unter Ubuntu 16.04.6 LTS
Neue Version 3.14159265-2.6-1.40.18 (TeX Live 2017/Debian) unter Ubuntu 18.04.3 LTS
Diese beiden pdflatex-Versionen führen bei diesem LaTeX-Code zu deutlich unterschiedlichem Layout:
[code]
\documentclass[]{scrbook}
\usepackage{lipsum}
\author{Author}
\title{Title}
\date{}
\begin{document}
\maketitle
% Tabelle 1
\begin{tabular}{l}
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
x\\
\end{tabular}
% Text
\lipsum[1]
% Tabelle 2
\begin{tabular}{l}
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
y\\
\end{tabular}
\end{document}
[/code]
Das LaTex-Dokument ist so aufgebaut:
[list=1]
[*] Titelblatt auf Seite 1
[*] Tabelle 1 oben auf Seite 2
[*] Text auf Seite 2 nach Tabelle 1
[*] Tabelle 2 oben auf Seite 3
[/list]
Bei der alten Version folgt der Text direkt auf Tabelle 1 (siehe alt.png). Die neue Version fügt jedoch einen großen Abstand zwischen Tabelle 1 und Text ein (siehe neu1.png). Löscht man Tabelle 2 aus dem LaTeX-Code, generiert die neue Version keinen großen Abstand mehr zwischen Tabelle 1 und Text (siehe neu2.png).
Wie kann ich mit der neuen Version von pdflatex das Layout der alten Version (ungefähr) erhalten, also (i) kein großer Abstand zwischen Tabelle 1 und Text und (ii) Tabelle 2 darf das Layout auf der vorangegangenen Seite nicht beeinflussen?
Eine Einbettung der Tabellen in eine table-Umgebung oder ein Ersetzen von scrbook kommt für mich leider nicht ohne Weiteres in Frage, da der gezeigte Code nur das Problem eingrenzt, das in einem deutlich komplexeren Dokument auftritt. Ideal wäre das Setzen eines globalen Parameters oder der Aufruf von Befehlen vor oder nach den Tabellen.