Archiv verlassen und diese Seite im Standarddesign anzeigen : Schriftgröße in der Kopfzeile ändern
Hallo zusammen,
ich schreibe zur Zeit meine Abschlussarbeit. Meine Kopfzeilen werden durch
\pagestyle{headings}
\renewcommand\chaptermark[1]{\markboth{\thechapter.~\MakeUppercase{#1}}{}}
generiert.
Nun hatte ich das Problem, dass manche Titel der Kapitel zu lang waren und über den Rand hinaus geschrieben wurden. Für die linke Seite habe ich das so
\renewcommand\chaptermark[1]{\markboth{\thechapter.~\MakeUppercase{\small#1}}{ }}
gelöst. Nun hätte ich die rechte Zeile auch gerne \small. Ist sicherlich nicht schwer, ich weiß nur nicht wie.
Besten Dank
nepi
Stefan_K
02-07-2008, 13:35
Hallo Nepi,
willst Du nicht lieber stattdessen den Kapiteltitel innerhalb der Kopfzeile kürzer formulieren? Das ginge durch einem \chaptermark-Aufruf (oder \markboth) direkt nach \chapter. Analog für \section mit überlangem Titel.
Sonst könnte man analog zu \chaptermark auch \sectionmark umdefinieren. In Deiner obigen Zeile bleibt \thechapter übrigens in normaler Größe. Man könnte alternativ \markboth und \markright redefinieren, um kleinere Schrift zu erhalten.
Aber wie eingangs bemerkt, ich würde mir überlegen, bei überlangen Titeln eine Kurzform anzugeben, die in Inhaltsverzeichnis und Kopfzeile verwendet wird, das geht mit \chapter[Kurztitel]{Langtitel} bzw. \section[Kurztitel]{Langtitel}.
Viele Grüße,
Stefan
Moin Stefan,
vielen Dank für die schnelle Antwort. Die Kurztitelvariante würde ich auch am liebsten nehmen, allerdings taucht dann der Kurztitel auch im Inhaltsverzeichnis auf, was mir nicht gefällt.
Ich glaube, wenn Du mir
Man könnte alternativ \markboth und \markright redefinieren, um kleinere Schrift zu erhalten. etwas genauer aufdröseln könntest, wäre mir am ehesten geholfen.
Ich kann doch bestimmt irgenwo noch ein \small hinpacken und dann gehts oder?
Viele Grüße
nepi
Stefan_K
02-07-2008, 14:03
Hallo Nepi,
man könnte das so tun:
\newcommand*\stdmarkboth{}
\let\stdmarkboth\markboth
\renewcommand*\markboth[2]{\stdmarkboth{\small#1}{\small#2}}
\newcommand*\stdmarkright{}
\let\stdmarkright\markright
\renewcommand*\markright[1]{\stdmarkright{\small#1}}
Stefan
Das super geklappt Stefan, alles gleich groß!! Vielen Dank!
In der Kopfzeile steht jetzt immer "Kapitel" vor der Zahl und dem Titel, was vorher nicht so war. Wenn Du mir das noch wieder wegnimmst, wird - um mit Nina Ruge zu sprechen - alles gut.
Viele Grüße
nepi
Stefan_K
02-07-2008, 14:34
Kein Problem, Du kannst das ja mit
\renewcommand\chaptermark[1]{\markboth{\thechapter.~\MakeUppercase{#1}}{}}
kombinieren.
Stefan
Hätt ich auch selbst drauf kommen können...
Wenn ich das nächste Mal in Gera bin gebe ich nen Eimer Köstritzer aus!!
Vielen Dank
nepi
Stefan_K
02-07-2008, 14:41
Hi Nepi,
mir fällt noch ein Fallstrick ein: \tableofcontents (u.a.) könnte je nach Klasse statt \markboth das interne Makro \@mkboth aufrufen. Prüfe einmal, ob die Kopfzeile beim Inhaltsverzeichnis bzw. der folgenden Seite die gleiche Größe (\small) aufweist. Falls nötig, kannst Du es ganz analog machen:
\makeatletter
\newcommand*\std@mkboth{}
\let\std@mkboth\@mkboth
\renewcommand*\@mkboth[2]{\std@mkboth{\small#1}{\small#2}}
\makeatother
Dann sind die Kopzeilen konsistenter.
Übrigens wäre das Ganze mit fancyhdr (http://www.ctan.org/tex-archive/help/Catalogue/entries/fancyhdr.html) komfortabler gewesen.
Viele Grüße,
Stefan
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.