PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Konflikt: bibliography und fancyhdr



usc12
12-02-2011, 17:04
Ich habe das folgende Problem: in meinem Dokument (book) benutze ich das Paket fancyhdr sowie ein über jabref erstelltes bibtex-Literaturverzeichnis. Ich habe mir für alle Kapitel eine Kopf-/Fußzeilen Optik gebastelt in der ein Logo und der Kapitelname im Kopf sowie die Seitenzahl außen im Fuß stehen. Die erste Seite eines jeden Kapitels soll dabei komplett ohne Kopf-/Fußzeile sein. Hier der Code (hoffe, ich habe nichts wesentliches rausgekürzt ...):



\documentclass[fleqn,10pt]{book}
\usepackage{a4, cite, graphicx, amssymb, xymtex, color, amsmath}
\bibliographystyle{timo3}
\renewcommand{\baselinestretch}{1.5}
\usepackage[latin1]{inputenc}
\usepackage[nottoc]{tocbibind}
\usepackage{fancyhdr, pdfpages}
\usepackage[bookmarks, bookmarksopenlevel=subsection]{hyperref}
\hypersetup{colorlinks=true, linkcolor=black, citecolor=blue}
\usepackage[paper=a4paper,left=35mm,right=35mm,top=30mm,bottom =25mm,includeheadfoot]{geometry}

\begin{document}

\chapter*{Abstract}
\thispagestyle{empty}

% Hier steht dann irgendwas …

\tableofcontents
\addtocontents{toc}{\protect\thispagestyle{empty}}


\pagestyle{fancy}
\setlength{\headheight}{18pt}

\chapter{Introduction}
\thispagestyle{empty}
\fancyhf{}
\fancyhead[EL]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[ER]{{\sc Chapter 1 - Introduction}}
\fancyfoot[EL]{\thepage}
\fancyhead[OR]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[OL]{{\sc Chapter 1 - Introduction}}
\fancyfoot[OR]{\thepage}

%Hier steht dann wieder irgendwas … es gibt auch mehrere Kapitel.

\listoffigures
\thispagestyle{empty}
\fancyhf{}
\fancyhead[EL]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[ER]{{\sc List of figures}}
\fancyfoot[EL]{\thepage}
\fancyhead[OR]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[OL]{{\sc List of figures}}
\fancyfoot[OR]{\thepage}
\newpage

\listoftables
\thispagestyle{empty}
\fancyhf{}
\fancyhead[EL]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[ER]{{\sc List of tables}}
\fancyfoot[EL]{\thepage}
\fancyhead[OR]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[OL]{{\sc List of tables}}
\fancyfoot[OR]{\thepage}
\newpage

\bibliography{phd}
\fancyhf{}
\fancyhead[EL]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[ER]{{\sc Bibliography}}
\fancyfoot[EL]{\thepage}
\fancyhead[OR]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[OL]{{\sc Bibliography}}
\fancyfoot[OR]{\thepage}
\newpage

\end{document}



Das ganze klappt super für alle Kapitel (nur eins - Introdcution - im Beispiel angegeben) und auch für die \listoftables bzw. \listoffigures. Allerdings nicht für das Literaturverzeichnis, da ist auf der ersten Seite die Seitenzahl mittig unten (sollte ja gar nicht da sein) und dann geht es im Kopf mit "List of Tables weiter". Auf der letzten Seite des Literaturverzeichnisses ist dann auf einmal nichts mehr im Kopf/Fuß. Ich vermute, dass LaTeX irgendwie das Literaturverzeichnis am letzten Eintrag markiert und daher erst auf der letzten Seite das \thispagestyle{empty} umsetzt und bis dahin einfach die alten Kopf-/Fußzeilen Befehle weiter benutzt ...

Es ist irgendwie das erste Mal, dass ich so ein Prolem einfach nicht gelöst kriege, daher hoffe ich sehr, dass es irgendwo da draußen einen schlauen Menschen gibt, der mir weiterhelfen kann ... Danke!

bobmalaria
12-02-2011, 17:19
hi,

füge mal ein \clearpage vor \bibliography ein.
dann wird vermutlich beim literaturverzeichnis der stil plain verwendet.
schau dir mal in der fancyhdr anleitung an wie man den umdefiniert. ist dort inkl. beispiel zu finden.

man muss eigentlich auch die ganzen fancyhdr-kommandos nur einmalig aufrufen und nicht jedes mal vor jedem kapitel.

gruss

u_fischer
12-02-2011, 18:22
Dein Code funktioniert nur, weil all deine Listen (derzeit) noch einseitig sind. Sobald es mehr Seiten werden, werden \thispagestyle und die ganzen fancy-Befehle sich nur auf die letzte Seite des Verzeichnis auswirken.


Benutze eine bessere Klasse (z.B. scrbook) und versuche es in etwa so:


\documentclass[fleqn,fontsize=10pt]{scrbook}

\bibliographystyle{plain} %weil ich timo3 nicht habe
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}

\pagestyle{fancy}


\fancyhf{}
\fancyhead[EL]{bird.jpg}
\fancyhead[ER]{{\sc \leftmark}}
\fancyfoot[EL]{\thepage}
\fancyhead[OR]{bird}
\fancyhead[OL]{{\sc \leftmark}}
\fancyfoot[OR]{\thepage}


\fancypagestyle{plain}{\fancyhf{}}

\begin{document}

\chapter*{Abstract}

\tableofcontents

\chapter{Introduction}
blub\newpage blub \newpage blub


\listoffigures

\addtocontents{lof}{abc\protect\newpage abc \protect\newpage blub}%Test mehrerer Seiten.

\listoftables

\bibliography{phd}

\end{document}

Schweinebacke
12-02-2011, 19:31
Nur als ergänzende Bemerkungen:

Vom Paket a4 wird abgeraten (siehe »Das LaTeX2e Sündenregister« (http://ctan.org/pkg/l2tabu)). Außerdem brauchst Du das ohnehin nicht, da Du geometry verwendest und die Ränder damit einstellst.
Statt \baselinestretch umzudefinieren, sollte man besser die Anweisung \linespread verwenden. Allerdings sollte man für eineinhalbzeiligen Satz besser das Paket setspace verwenden, damit beispielsweise Fußnoten und Bildunterschriften nicht davon betroffen sind. Außerdem sollte man auch die Verzeichnisse nicht eineinhalbzeilig setzen.
\sc ist LaTeX2.09 und mit NFSS2, also min. seit LaTeX2e obsolet (siehe auch hierzu l2tabu).
Kapitelnummern und Kapitelnamen fest in Köpfe einzubauen, statt sie entweder automatisch setzen zu lassen oder mit \markboth und \markright zu setzen, ist wenig sinnvoll.



Ich würde aber wie Ulrike einen Wechsel zu KOMA-Script empfehlen und dann kann man das beispielsweise wie folgt machen:
\documentclass[fleqn,10pt,listof=totoc,bibliography=totoc,headhei ght=18pt,
cleardoublepage=current% eigentlich kann ich die Option nicht empfehlen
]{scrbook}
\usepackage{cite}
\usepackage[demo]{graphicx}% demo, weil ich das Bild nicht habe
\usepackage{amssymb, color, amsmath}% xymtex habe ich auch nicht
\bibliographystyle{plain}% Ersatz für das unbekannte timo3
\usepackage[onehalfspacing]{setspace}
\usepackage[latin1]{inputenc}
\usepackage{scrpage2}
\usepackage{pdfpages}
\usepackage[bookmarks, bookmarksopenlevel=subsection]{hyperref}
\hypersetup{colorlinks=true, linkcolor=black, citecolor=blue}
\usepackage[paper=a4paper,left=35mm,right=35mm,top=30mm,bottom =25mm,includeheadfoot]{geometry}
\usepackage[english]{babel}
\usepackage{blindtext}% Kann ganz schnell große Dokumente

\renewcommand*{\chapterpagestyle}{empty}% Du willst offenbar auf
% Kapitelanfangsseiten nicht einmal eine
% Seitenzahl
\automark[chapter]{chapter}% auf geraden und ungeraden Seiten Kapitel im Kolumnentitel
\pagestyle{scrheadings}
\ohead{\includegraphics[width=10mm,height=5mm]{bird.jpg}}
\ihead{\headmark}
\ofoot[\pagemark]{\pagemark}
\setkomafont{pagehead}{\scshape}% Kopfzeile in Small-Capitals
\renewcommand*{\chaptermarkformat}{% Kapitelnummerierung in den Kopfmarken
\chapapp\nobreakspace\thechapter\nobreakspace--\nobreakspace}
\begin{document}

\addchap{Abstract}% Wenn man will, dass das auch im Inhaltsverzeichnis steht
% und einen Kolumnentitel bekommt

% Hier steht dann irgendwas …

\begin{spacing}{1}% Verzeichnis einzeilig
\tableofcontents
\end{spacing}

\chapter{Introduction}

\blindtext[10]

%Hier steht dann wieder irgendwas … es gibt auch mehrere Kapitel.

\begin{spacing}{1}% Die Verzeichnisse auch einzeilig
\listoffigures
\listoftables
\end{spacing}

\blinddocument\blinddocument\blinddocument\blinddo cument
\blinddocument\blinddocument\blinddocument\blinddo cument
\blinddocument\blinddocument\blinddocument\blinddo cument

\bibliography{phd}
\end{document}

usc12
14-02-2011, 18:08
Okay,

zunächst einmal vielen Dank für die Anregungen .

Ich habe mir mit einer Mischung aus den Vorschlägen von Ulrike und Schweinebacke (?) einen für mich soweit funktionierenden Code gebastelt, ich benutze jetzt also das Koma-Skript. Allerdings bin ich im fancyhdr-Paket geblieben (nicht scrpage2) da ich mich damit bereits recht gut auskenne. Ich hatte zudem die fancyhdr-Befehle ürsprünglich ganz bewusst nicht global gesetzt, da meine Kapitelüberschriften teilweise recht umfangreich sind und ich oben nur 'Kurzfassungen' haben will. Jetzt mache ich das allerdings trotzem global mit \leftmark und benutze in den betroffenen Kapiteln den \markboth Befehl um die Kurzfassung einzuführen. Zudem habe ich das \uppercase in den Kopfzeilen verbannt (um das anzugleichen hatte ich auch manuell auf \sc gestellt).

Das ganze sieht dann so aus:



\documentclass[fleqn,fontsize=10pt,listof=totoc,bibliography=toto c,headheight=18pt]{scrbook}
\usepackage{cite, graphicx, amssymb, xymtex, color, amsmath}
\bibliographystyle{timo3}
\renewcommand{\baselinestretch}{1.5}
\usepackage[latin1]{inputenc}
\usepackage{fancyhdr, pdfpages}
\usepackage[bookmarks, bookmarksopenlevel=subsection]{hyperref}
\hypersetup{colorlinks=true, linkcolor=black, citecolor=bluee}
\usepackage[paper=a4paper,left=35mm,right=35mm,top=30mm,bottom =25mm,includeheadfoot]{geometry}
\usepackage[english]{babel}

\renewcommand*{\chapterpagestyle}{empty}
\fancyhf{}
\fancyhead[EL]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[ER]{\leftmark}
\fancyfoot[EL]{\thepage}
\fancyhead[OR]{\includegraphics[width=10mm]{bird.jpg}}
\fancyhead[OL]{\leftmark}
\fancyfoot[OR]{\thepage}

\begin{document}

\chapter*{Abstract}
\thispagestyle{empty}

%Hier steht dann irgendwas …

\tableofcontents
\addtocontents{toc}{\protect\thispagestyle{empty}}

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{\chaptername\ \thechapter\ -\ #1}{}}

\chapter{Introduction}

%Hier steht dann wieder irgendwas …

\chapter{Titel mit ganz vielen Worten, viel zu lang für die Kopfzeile}
\markboth{Titel in der Kurzfassung}{}

\listoffigures
\newpage

\listoftables
\newpage

\bibliography{phd}
\newpage

\end{document}


Eine kleine Frage bleibt mir aber noch:

welcher Font wird bei scrbook für die Überschriften benutzt? Würde den gerne auch bei der Überschrift auf dem Titelblatt verwenden ... das wär's dann aber ;-)

Nochmal vielen Dank!

usc12
15-02-2011, 11:30
Hat sich erledigt ...

im Kopf:



\usepackage[T1]{fontenc}
\necommand{\changefont}[3]{\fontfamily{#1} \fontseries{#2} \fontshape{#3} \selectfont}


Dann zum ändern auf den 'Überschriften-Font' unmittelbar vor der betroffenen Textpassage:



\changefont{cmss}{bx}{n}


Und zum Rückstellen:



\changefont{cmr}{m}{n}

bobmalaria
15-02-2011, 12:08
hi,

du weisst das man


\chapter[kurzform]{langform}
schreiben kann? die kurzform wird dann in den verzeichnissen und in der kopfzeile verwendet.

gruss

u_fischer
15-02-2011, 12:38
welcher Font wird bei scrbook für die Überschriften benutzt?

\sffamily\bfseries. \changefont ist für nur für spezielle Zwecke nützlich.