In einer beamer Präsentation habe ich die Schrift für section in der Kopfzeile vergrößert. Wie kann ich die Höhe der Kopfzeile entsprechend anpassen? Hier ist ein Beispiel, bei dem ich die Vergrößerung übertrieben habe (auf \huge statt auf \scriptsize oder \footnotesize), damit das Problem gut sichtbar ist:

\documentclass{beamer}
\let\Tiny\tiny
\usetheme{Frankfurt}
\usecolortheme{seahorse}
\setbeamerfont{section in head/foot}{size=\huge}

\begin{document}
\section{Einleitung}
\subsection{Unterpunkt}
\begin{frame}\frametitle{Folientitel}
  Dies ist die erste Folie.
\end{frame}
\subsection{Unterpunkt}
\begin{frame}\frametitle{Folientitel}
  Dies ist die zweite Folie.
\end{frame}
\end{document}

alt text

gefragt 28 Dez '13, 18:50

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

bearbeitet 28 Dez '13, 19:12


Nach dem ich im beameruserguide (Paketdokumentation zu beamer) auch nichts hilfreiches gefunden habe, bin ich ebenfalls im Code der Beamerthemen auf die Suche gegangen und bei der beamerfontthemedefault.sty Datei gelandet. Dort habe ich erstaunt festgestellt, dass in der Voreinstellung ein ganz anderer beamerfont für die Schriftgröße in der Kopfzeile und die von @sudo erwähnte automatische Anpassung der Kopfzeilenhöhe genutzt wird: headline

\setbeamerfont{headline}{size=\huge}

Hier nun noch der komplette Code für verschiedene Beamerthemen:

\documentclass{beamer}
\let\Tiny\tiny
\usetheme{Frankfurt}
%\usetheme{Berlin}
%\usetheme{Warsaw}
\usecolortheme{seahorse}

\setbeamerfont{headline}{size=\huge}% \huge nur für Demozweck, sonst max. \footnotesize

\title{Titel}
\begin{document}
\section{Einleitung}
\subsection{Unterpunkt}
\begin{frame}\frametitle{Folientitel}
  Dies ist die erste Folie.
\end{frame}
\subsection{Unterpunkt}
\begin{frame}\frametitle{Folientitel}
  Dies ist die zweite Folie.
\end{frame}
\end{document}

Frankfurt:

alt text

Berlin:

alt text

Warsaw:

alt text

Wie man in den Beispielen sieht, beeinflusst headline aber alle Elemente in der Kopfzeile, also auch dort erscheinende subsection etc. und beim Thema Frankfurt auch den Abstand zwischen Kopfzeile und Folientitel. Würde man tatsächlich die riesige Vergrößerung auf \huge nehmen, wäre der Vorschlag von @sudo für das Thema Frankfurt wegen dieses Abstandes eindeutig besser.

Für die Fußzeile gibt es das analoge Element footline. In der Voreinstellung übernehmen beide die Schrift von tiny structure und sind wie der Name suggeriert \tiny. Deshalb sind schon \scriptsize oder \footnotesize eine deutliche Vergrößerung.

Die Voreinstellung für den beamerfont section in head/foot in der beamerfontthemedefault.sty ist übrigens leer: \setbeamerfont{section in head/foot}{} Im folgenden Beispiel wird das sichtbar:

\documentclass{beamer}
\let\Tiny\tiny
\usetheme{Frankfurt}
\usecolortheme{seahorse}

\title{Titel}
\begin{document}
\section{Einleitung}
\subsection{Unterpunkt}
\begin{frame}\frametitle{Folientitel}
  Das ist normaler Text.

  {\usebeamerfont{section in head/foot}Dieser Text wird mit dem beamerfont section in head/foot gesetzt.}

  {\usebeamerfont{headline}Dieser Text wird mit dem beamerfont headline gesetzt.}

  Wieder normaler Text.
\end{frame}
\end{document}

alt text

Permanenter link

beantwortet 29 Dez '13, 22:10

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

bearbeitet 05 Jan '14, 21:59

In \useoutertheme{smoothbars}, welches vom Theme Frankfurt verwendet wird, wird die Höhe fest vorgegeben, um die Positionen für die Shadings richtig zu haben. Eigentlich sollte es nicht nötig sein, die Höhe anzupassen, da Beamer das selbst mache (beameruserguide Abschnitt 8.2.1):

The size of the headline and the footline is determined as follows: [...] Their height is determined by tentatively typesetting the headline and the footline right after the \begin{document} command.

In deinem Fall reicht es ein neues headline-Template mit dem Standard-Inhalt zu definieren:

\documentclass{beamer}
\let\Tiny\tiny
\usetheme{Frankfurt}
\usecolortheme{seahorse}

%                                 % Head
\defbeamertemplate*{headline}{new smoothbars theme}
{%
  \begin{beamercolorbox}{section in head/foot}
\vspace{2pt}
\insertnavigation{\paperwidth}
\vspace{2pt}
  \end{beamercolorbox}%
}%

\setbeamerfont{section in head/foot}{size=\huge}

\begin{document}
\section{Einleitung}
\subsection{Unterpunkt}
\begin{frame}\frametitle{Folientitel}
  Dies ist die erste Folie.
\end{frame}
\subsection{Unterpunkt}
\begin{frame}\frametitle{Folientitel}
  Dies ist die zweite Folie.
\end{frame}
\end{document}

alt text

Permanenter link

beantwortet 29 Dez '13, 14:22

sudo's gravatar image

sudo
2.0k51521
Akzeptiert-Rate: 39%

bearbeitet 30 Dez '13, 09:53

esdd's gravatar image

esdd
17.8k284257

2

Nach \vskip2pt ist das % unnötig: folgende Leezeichen werden bei der Suche nach einem plus ignoriert. Um das zu verhindern, ist stattdessen ein \relax angebracht. Sonst kann es komische Fehlermeldungen geben:

\documentclass{article}
\begin{document}
\vskip2pt% Das Kommentarzeichen spielt hier keine Rolle
plus Fehler
\end{document}

Die LaTeX-Variante wäre natürlich \vspace, mit dem es keine Probleme gibt.

(29 Dez '13, 16:05) cgnieder

@Clemens Danke für den Tipp. Ich hab die \vskip vom Original-Code übernommen und nicht weiter drüber nach gedacht. Bei \vspace brauch ich auch keine %, oder?

(29 Dez '13, 18:28) sudo

@sudo In Deinem Code sind die \vskip ja auch nicht problematisch... :) Bei \vspace sind Zeilenenden auch egal. Man setzt es ja zum einen in der Regel im vertikalen Modus ein, in dem Leerzeichen sowieso ignoriert werden. Zum anderen ist es für horizontalen Modus mit \@bsphack/\@esphack definiert. Es verhält sich also was Leerzeichen angeht wie \label.

(29 Dez '13, 18:34) cgnieder

@sudo: Deine Lösung funktioniert perfekt für das konkrete Problem im Minimalbeispiel, Danke. Ich akzeptiere trotzdem die andere Lösung, weil diese auch auf andere beamer Themen übertragbar ist.

(15 Jan '14, 16:15) esdd
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×141
×38
×32

gestellte Frage: 28 Dez '13, 18:50

Frage wurde gesehen: 15,285 Mal

zuletzt geändert: 15 Jan '14, 16:15