Seite 1 von 1

Header bei twoside sitzt falsch

Verfasst: Mo 22. Nov 2010, 12:05
von f.brueseke
Hallo liebe Community,

ich habe folgendes Problem. Ich will ein großes Dokument per Latex generieren, bei dem sich das Seitenlayout auch unterwegs mal ändert. Außerdem verwende ich ein twoside-Layout. Diese Kombination führt wohl dazu, dass der Header nicht korrekt angezeigt wird. Er ist auf gerade Seiten verschoben (also nicht anders als auf ungeraden Seiten).

Das Beispiel unten zeigt das Problem. Bei mir kann ich die Verschiebung auf jeder geraden Seite erkennen (Header und Inhalt sitzen nicht direkt untereinander).

Ich bin für jede Hilfe dankbar!

Viele Grüße
Frank

\documentclass[8pt,twoside]{article}
\usepackage{geometry}
\geometry{a4paper, twoside, includehead, includefoot, inner=1cm, outer=1cm, bottom=0.5cm, footskip=16pt, top=0.5cm, head=3.3cm, headsep=0pt}    %Standard-Seitenlayout wird ueberschrieben
\setlength{\unitlength}{1mm}

\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\selectlanguage{german}

\usepackage{calc}
\usepackage{hhline,colortbl,tabularx,array}
\setlength{\doublerulesep}{0.1mm}

\usepackage{times}    %setzt die Standard-Serifenschriftart auf Times
\renewcommand{\familydefault}{\sfdefault}    %Serifenlose Schrift als Standard

\usepackage{fancyhdr}    %Seitenheader
\pagestyle{fancy}

\begin{document}
\parindent 0pt    % Kein Einzug vor neuen Absätzen!
\footnotesize     % Schrift etwas kleiner
\raggedbottom     % Seitenelängen nicht gleich lang

% REGION 1:
\restoregeometry\newgeometry{twoside, includehead, includefoot, inner=11mm, outer=7mm, bottom=3mm, footskip=5mm, top=4mm, head=13mm, headsep=0pt}    %Seitenlayout
\fancyhf{}    %Seitenheader
\fancyhead[LE,LO]{\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.75}}X|}HEADER \end{tabularx}}
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\newpage
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\newpage
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}


% REGION 2:
\restoregeometry\newgeometry{twoside, includehead, includefoot, inner=11mm, outer=7mm, bottom=3mm, footskip=5mm, top=4mm, head=33mm, headsep=0pt}    %Seitenlayout
\fancyhf{}    %Seitenheader
\fancyhead[LE,LO]{\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.75}}X|}HEADER \end{tabularx}}
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\newpage
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\newpage
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\end{document}

Verfasst: Mo 22. Nov 2010, 13:30
von Nerd 032F
Unabhängig von Deinem Problem:
  • Das Paket times ist veraltet (siehe l2tabu). Außerdem willst Du doch gar keine Times, sondern offensichtlich Helvetica, also reicht es ohnehin, wenn Du helvet lädst.
  • Du setzt den Absatzeinzug auf 0 und hast damit keine Absatzauszeichnung mehr. Wenn Du schon keinen Absatzeinzug möchtest, solltest Du zumindest Absatzabstand verwenden. Wie man den erreicht, steht ggf. ebenfalls in l2tabu.

Verfasst: Di 23. Nov 2010, 11:28
von f.brueseke
Hi Nerd 032F,

danke für die Hinweise. Die Tabuliste für Latex ist wirklich interessant, nur löst sie mein Problem nicht.

Ich habe nach einigem herum experimentieren nun selbst die Lösung gefunden. Der Befehl \pagestyle sollte bei Seitenlayouts, die sich im Dokumentenverlauf ändern, auch direkt nach jeder Änderung des Seitenlayouts stehen. Auch dann wenn sich der Wert von \pagestyle nicht ändert. Also auch wenn ihr jedes Mal \pagestyle{fancy} schreibt, ist dies unbedingt erforderlich. Das unten angeführte Beispiel funktioniert (endlich). Man beachte, dass nach jedem \newgeometry ein \pagestyle kommt.

Viele Grüße
Frank


Nachtrag 2011-05-02:

Offensichtlich darf in der Präambel des Latex-Dokuments KEIN \pagestyle vorkommen, es MUSS aber im Laufe des Dokuments nach jedem \newgeometry auftreten. Dies hat sich bei den neuesten Änderungen ergeben.

documentclass[8pt,twoside]{article}
\usepackage{geometry}
\geometry{a4paper, twoside, includehead, includefoot, inner=21mm, outer=15mm, bottom=0.5cm, footskip=16pt, top=0.5cm, head=3.3cm, headsep=0pt}    %Standard-Seitenlayout wird ueberschrieben
\setlength{\unitlength}{1mm}

\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\selectlanguage{german}

\usepackage{calc}
\usepackage{hhline,colortbl,tabularx,array}
\setlength{\doublerulesep}{0.1mm}

\usepackage{times}    %setzt die Standard-Serifenschriftart auf Times
\renewcommand{\familydefault}{\sfdefault}    %Serifenlose Schrift als Standard

\usepackage{fancyhdr}    %Seitenheader
\setlength{\parindent}{0pt}    % Kein Einzug vor neuen Absätzen!

\begin{document}
\footnotesize     % Schrift etwas kleiner
\raggedbottom     % Seitenelängen nicht gleich lang

% REGION 1:
\newgeometry{twoside, includehead, includefoot, inner=11mm, outer=7mm, bottom=3mm, footskip=5mm, top=4mm, head=20mm, headsep=0pt}

\pagestyle{fancy}
\fancyhf{}    %Seitenheader
\fancyhead[LE,LO]{\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.75}}X|}HEADER \end{tabularx}}
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\newpage
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\newpage
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}


% REGION 2:
\newgeometry{twoside, includehead, includefoot, inner=11mm, outer=7mm, bottom=3mm, footskip=5mm, top=4mm, head=33mm, headsep=0pt}    %Seitenlayout

\pagestyle{fancy}
\fancyhf{}    %Seitenheader
\fancyhead[LE,LO]{\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.75}}X|}HEADER \end{tabularx}}
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\newpage
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\newpage
\begin{tabularx}{\textwidth}{|>{\centering\arraybackslash\columncolor[gray]{.85}}X|}
\hline
TEST \\
\hline
\end{tabularx}

\end{document}