PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Minipages nicht aneinander ausrichten?



Worldedit
08-02-2012, 15:32
Ich versuche Folien mit minipage in zwei Seiten auzuteilen. Auf einer Seite soll immer die gleiche Aufzählung sein, auf der anderen verschiedene Bilder. Leider wird mir immer die kleinere Minipage an der Mitte der größeren ausgerichtet. Wenn ich die Folien durchklicke hüpft der Text also hin und her. Benutze ich t oder b als Position wird die Ausgabe anders, aber nicht besser. Die Minipages sollen an der Folie ausgerichtet werden, nicht untereinander.

Ist sicher nur ne Kleinigkeit, aber ich kriegs nicht hin.



\begin{frame}
\begin{minipage}{0.5\textwidth}
\begin{itemize}
\item \textcolor{red}{Zeile1}
\item Zeile2
\item Zeile3
\item Zeile4
\item Zeile5
\item Zeile6
\end{itemize}
\end{minipage}
\hspace{0.2cm}
\begin{minipage}{0.45\textwidth}
\includegraphics[width=0.6\textwidth]{langesbild}
\end{minipage}
\end{frame}

\begin{frame}
\begin{minipage}{0.5\textwidth}
\begin{itemize}
\item Zeile1
\item \textcolor{red}{Zeile2}
\item Zeile3
\item Zeile4
\item Zeile5
\item Zeile6
\end{itemize}
\end{minipage}
\hspace{0.2cm}
\begin{minipage}{0.45\textwidth}
\includegraphics[width=0.6\textwidth]{kurzesbild}
\end{minipage}
\end{frame}

u_fischer
08-02-2012, 15:51
Dein Beispiel ist ziemlich nutzlos: Es fehlt die Präambel und die Bilder hat auch keiner. Vervollständige den Code und ersetze die Bilder durch geeignete \rule{Breite}{Höhe}-Befehle.

Abgesehen davon:


Die Minipages sollen an der Folie ausgerichtet werden, nicht untereinander.

Die Minipages sind nicht untereinander ausgerichtet, sondern jede für sich wird an der Grundlinie ausgerichtet. Schreib einfach mal ein x vor die minipage, dann kannst du sehen, wo die Grundlinie ist.

Worldedit
08-02-2012, 15:59
\documentclass[t]{beamer}
\usepackage[english]{babel}
\usepackage[UTF8]{inputenc}
\usepackage[TS1,T1]{fontenc}
\usepackage{array}
\usepackage{lipsum}
\usepackage{hyphenat}
\usepackage[squaren]{SIunits}
\usepackage{bibgerm}
\usepackage[percent]{overpic}
\usebibitemtemplate{\insertbiblabel}

\begin{document}
\begin{frame}
\begin{minipage}{0.5\textwidth}
\begin{itemize}
\item \textcolor{red}{Zeile1}
\item Zeile2
\item Zeile3
\item Zeile4
\item Zeile5
\item Zeile6
\end{itemize}
\end{minipage}
\hspace{0.2cm}
\begin{minipage}{0.45\textwidth}
\rule{2cm}{10cm}
\end{minipage}
\end{frame}

\begin{frame}
\begin{minipage}{0.5\textwidth}
\begin{itemize}
\item Zeile1
\item \textcolor{red}{Zeile2}
\item Zeile3
\item Zeile4
\item Zeile5
\item Zeile6
\end{itemize}
\end{minipage}
\hspace{0.2cm}
\begin{minipage}{0.45\textwidth}
\rule{2cm}{2cm}
\end{minipage}
\end{frame}
\end{document}

Bei mir werden die Minipages nicht an einer Grundlinie ausgerichtet, sondern die kleinere an der Mittellinie der größeren.

u_fischer
08-02-2012, 16:19
Bei mir werden die Minipages nicht an einer Grundlinie ausgerichtet, sondern die kleinere an der Mittellinie der größeren.

Glaub es mir doch einfach. Objekte im Horizontalmodus werden entlang der Grundlinie ausgerichtet. Deine beiden Minipages werden entlang derselben Grundlinie zentriert und sind daher natürlich auch zueinander zentriert.

Es fehlen mir aber noch Angaben:

1. Wo sollen die beiden Grundlinien relativ zu der jeweiligen Folie sein?

2. Und wie sollen die Minipages relativ zu diesen Grundlinien liegen?

Worldedit
08-02-2012, 16:25
Ich wäre zufrieden wenn ich den Inhalt beider Minipages entweder oben bündig oder zur Folie zentriert bekommen könnte. Mit dem Positionsparameter krieg ich das nicht hin.

hakaze
08-02-2012, 16:26
In dem Fall wäre es vielleicht günstiger auf die beamer-interne columns-Umgebung zur Strukturierung der Folie auszuweichen (siehe auch beameruserguide, Abschnitt 12.7 Splitting a Frame into Multiple Columns) <- dort wird auch nochmal die Geschichte mit der baseline beschrieben ;)


\documentclass{beamer}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\begin{document}
\begin{frame}
\begin{columns}[T,onlytextwidth]
\begin{column}{0.45\textwidth}
\begin{itemize}
\item \textcolor{red}{Zeile1}
\item Zeile2
\item Zeile3
\item Zeile4
\item Zeile5
\item Zeile6
\end{itemize}
\end{column}
\hspace{0.2cm}
\begin{column}{0.45\textwidth}
\rule{2cm}{8cm}
\end{column}
\end{columns}
\end{frame}

\begin{frame}
\begin{columns}[T,onlytextwidth]
\begin{column}{0.45\textwidth}
\begin{itemize}
\item Zeile1
\item \textcolor{red}{Zeile2}
\item Zeile3
\item Zeile4
\item Zeile5
\item Zeile6
\end{itemize}
\end{column}
\hspace{0.2cm}
\begin{column}{0.45\textwidth}
\rule{2cm}{2cm}
\end{column}
\end{columns}
\end{frame}
\end{document}

Worldedit
08-02-2012, 16:47
Ok, ich hatte erst parbox und dann minipage ausprobiert. Aber auch in deinem Beispiel springt der Text. Der Inhalt der linken Seite soll wie angenagelt sein wenn ich die Folie wechsel.

Ich sehe auch in der Beschreibung zu Columns keine Möglichkeit das zu erreichen. Gabs nicht einen Befehlt, der die Ausrichtung ganz aufhebt?

rais
08-02-2012, 19:32
Moin moin,

Ok, ich hatte erst parbox und dann minipage ausprobiert. Aber auch in deinem Beispiel springt der Text. Der Inhalt der linken Seite soll wie angenagelt sein wenn ich die Folie wechsel.

die Vermutung liegt nahe, daß zwar die einzelnen column-Umgebungen innerhalb der columns[T]-Umgebung an ihren Oberkanten zueinander ausgerichtet werden, die columns-Umgebung selbst aber innerhalb der frame-Umgebung vertikal zentriert wird.
Schau also, ob Du die frame-Umgebungen global oben anfangen lassen kannst, ansonsten:


\documentclass{beamer}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\begin{document}
\begin{frame}[t]
\begin{columns}[T,onlytextwidth]
\begin{column}{0.45\textwidth}
\begin{itemize}
\item \textcolor{red}{Zeile1}
\item Zeile2
\item Zeile3
\item Zeile4
\item Zeile5
\item Zeile6
\end{itemize}
\end{column}\hfill
\begin{column}{0.45\textwidth}
\rule{2cm}{8cm}
\end{column}
\end{columns}
\end{frame}

\begin{frame}[t]
\begin{columns}[T,onlytextwidth]
\begin{column}{0.45\textwidth}
\begin{itemize}
\item Zeile1
\item \textcolor{red}{Zeile2}
\item Zeile3
\item Zeile4
\item Zeile5
\item Zeile6
\end{itemize}
\end{column}\hfill
\begin{column}{0.45\textwidth}
\rule{2cm}{2cm}
\end{column}
\end{columns}
\end{frame}
\end{document}

MfG

Worldedit
09-02-2012, 15:12
Danke, mit dem kleinen [t] hinter begin frame funktionierts. Auch mit minipage oder parbox.