Seite 1 von 1

Beamer: Spacing über und unter figures/tables in block

Verfasst: Mo 16. Jan 2012, 19:13
von BeamerBlock
Hallo liebes Forum,

ich habe ein Problem mit LaTeX-Beamer: Benutze ich die floating-Umgebungen "figure" sowie "table" oder auch die "equation"-Umgebung innerhalb einer "block"-Umgebung, wird ober- und unterhalb der floating-Umgebung sehr viel Platz eingefügt. Dieser schrumpft auch nicht, wenn die Seite sehr (oder sogar über-)voll ist und verschwendet somit auch wertvollen Platz -- mal abgesehen davon, dass es nicht gut aussieht :wink:

Ich habe bereits Google bemüht. Die dort vorgeschlagenen Lösungen
\addtobeamertemplate{block begin}{\setlength\abovedisplayskip{0pt}}
oder
\AtBeginDocument{\setlength\abovedisplayskip{0pt}}
in die Präambel aufzunehmen, hat leider nicht viel geholfen. Das Ergebnis sah unverändert aus. Auch das Einfügen von
\setlength\abovedisplayskip{0pt}
direkt in den Block brachte nicht viel...

Ich würde gerne einen Screenshot einfügen, habe aber leider keine Möglichkeit, irgendwo ein Bild hochzuladen. :(

Ich füge unten noch den relevanten Teil eines Beispieldokumentes ein. Ggf. hat ja jemand eine Idee :)

Danke und Grüße,
BeamerBlock
\documentclass[10pt]{beamer}
\usepackage[english]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{subfig}
\useoutertheme{smoothbars}
\usecolortheme{seagull}
\usefonttheme{structurebold}
%\addtobeamertemplate{block begin}{\setlength\abovedisplayskip{0pt}}
\AtBeginDocument{\setlength\abovedisplayskip{0pt}}
\begin{document}

\begin{frame}
\begin{block}{Lorem ipsum}
 Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
 \end{block}
 \begin{block}{Table}
 \begin{table}
 \label{tbl:table}
 \caption{Table caption}
 \begin{tabular}{|ccc|}
 	\hline
 	1 & 2 & 3 \\ \hline
 \end{tabular}
 \end{table}
 \end{block}
\end{frame}

\begin{frame}
\begin{block}{Lorem ipsum}
 Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
 \end{block}
\begin{block}{equation}
\begin{equation}
a^2 = b^2 + c^2
\label{eqn:abc}
\end{equation}
\end{block} 
\end{frame}

% Hier habe ich ein gleiches Beispiel mit einer figure mal ausgelassen...

\begin{frame}
\begin{block}{Lorem ipsum}
 Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
 \end{block}
\begin{block}{Lorem ipsum}
Lorem ipsum
\end{block}
\end{frame}

\end{document}

Verfasst: Mo 16. Jan 2012, 22:07
von bloodworks
Warum verwendest du denn floats bei beamer? Lass die doch einfach weg.

Verfasst: Di 17. Jan 2012, 09:46
von BeamerBlock
Hallo bloodworks,

danke für deine Antwort!

Du hast Recht, für die "normalen" figures und tables kann ich das machen.

Aber das hilft leider noch nicht bei den Gleichungen (equation-Umgebung). Außerdem (habe ich oben nicht explizit erwähnt) würde ich gerne auch subfigures nutzen, die dann eine figure-Umgebung benötigen (Paket "subfig", Befehl "subfloat").

Freue mich über weitere Ideen und Vorschläge!

Grüße,
der BeamerBlock

Verfasst: Di 17. Jan 2012, 18:43
von swot
In der Dokumentation von caption wird beschreiben wie der Abstand zwischen Bildern und Bildunterschrift verändert werden kann. von caption wird der Abstand standardmäßig auf 10pt gesetzt

probier mal:
\usepackage[skip=5pt]{caption}
oder halt den Abstand, der geünscht ist.

ftp://ftp.fu-berlin.de/tex/CTAN/macros/ ... on-deu.pdf

Verfasst: Mi 18. Jan 2012, 09:52
von BeamerBlock
Hallo zusammen,

danke für den weiteren Tipp!

Leider ist das auch nicht das Problem. Es schafft zwar Abhilfe für die Tabellenbeschriftung, da diese oberhalb der Tabelle ist, aber für die Grafik verschlimmert sich das Problem, da diese dann in das Bild rutscht.

Hier jetzt mal ein paar Screenshots der Folien (ohne manuell gesetzte Abstände) aus dem oben gezeigten LaTeX-Code:

Beispiel mit Tabelle. Hier ist zu viel Abstand ober- und unterhalb der table-Umgebung zu sehen.
Bild

Beispiel mit Bild. Hier ist zu viel Abstand ober- und unterhalb der figure-Umgebung zu sehen.
Bild

Beispiel mit Gleichung (equation). Hier ist zu viel Abstand ober- und unterhalb der equation-Umgebung zu sehen.
Bild

Beispiel mit Text. Hier ist alles wie es sein sollte.
Bild

Es scheint also ein Problem der figure-, table- und equation-Umgebung zu sein, ggf. nur zusammen mit dem Block.

Noch Ideen?

Danke und Grüße,
der BeamerBlock