Anzeige:
Ergebnis 1 bis 5 von 5

Thema: Text verrutscht bei Einblendungen in Beamer

  1. #1
    Registrierter Benutzer
    Registriert seit
    16.01.2013
    Beiträge
    19

    Text verrutscht bei Einblendungen in Beamer

    Hallo,

    nachdem ich nun schon seit Jahren Latex verwende, muss ich nun doch zum ersten Mal einen Thread in diesem Forum eröffnen:
    Ich erstelle meine Beamerpräsentationen gern mit Latex-Beamer und möchte die verwendeten Bilder gern so groß wir möglich machen.
    Allerdings habe ich das Problem, dass sich Texte in der linken column verschieben, sobald ich in der rechten column ein Bild einblende (also von frame zu frame). Hier ist ein Beispiel:

    Code:
    \documentclass{beamer}
    \begin{document}
    
    \begin{frame}
    \begin{columns}
    	\column{0.45\textwidth}
    		Alternativen
    	\column{0.55\textwidth}
    		\centerline{\includegraphics<2>[width = 1.0\columnwidth]{./bilder/messina}}
    \end{columns}
    \end{frame}
    
    \end{document}
    Nun könnte ich das Problem vielleicht noch dadurch lösen, dass ich das Bild mit \visible einbinde. Allerdings geht das nicht mehr, wenn mehrere Bilder nacheinander an der gleichen Stelle eingeblendet werden sollen.

    Dieses Problem nervt mich immer wieder, schon seit Monaten, dementsprechend habe ich schon vieles ausprobiert, einige Dinge seien hier genannt:
    • Abbildungen in figure-Umgebung verpacken
    • Alle Abbildungen in EINE figure-Umgebung packen
    • Text und/oder Abbildungen in eine overürint-Umgebung schreiben
    • Bilder verkleinern (da ist dann aber ein Wert von etwa width = 0.3\textwidth nötig)
    • Gesamtbreite der columns unter die Maximalbreite von 1.0\textwidth setzen
    • zwischen die beiden columns eine dritte, sehr schmale column (0.05\textwidth) einfügen


    Ich würde mich wirklich freuen, wenn jemand einen Tipp hat, auf diese Weise ist das Erstellen von Präsentationen einfach nur frustrierend.
    Ein pdf, in dem das Problem zu sehen ist, hänge ich an.

  2. #2
    Registrierter Benutzer
    Registriert seit
    06.08.2008
    Beiträge
    1.015
    Beamer kennt verschiedene Kommandos, um Overlays, also schrittweises Erscheinen oder Überlagern, zu realisieren. \pause, \only, \uncover, \visible, \onslide und die reine < x-y > Notation für einige Umgebungen.

    Bei der Standardvariante (u.a. auch bei der Klammer-Version) werden die Elemente erst auf den Frames eingefügt, wo sie benötigt werden. Daher "weiss" beamer zu dem Zeitpunkt noch nicht, wie groß sie sein werden. Einige automatische Berechnungen wie horizontale oder vertikale Zentrierung gehen daher schief: Text oder Abbildungen springen herum...

    Mit uncover oder visible passiert das nicht, da wird auch auf den vorherigen Slides Platz reserviert:

    Code:
    \documentclass{beamer}
    \begin{document}
    
    \begin{frame}
    \begin{columns}[c]
    	\column{0.45\textwidth}
    		Alternativen
    	\column{0.55\textwidth}
    		\uncover<2>{\includegraphics[width = 1.0\columnwidth]{messina}}
    \end{columns}
    \end{frame}
    
    \end{document}
    PS. für die vertikale Zentrierung habe ich die Option c der columns-Umgebung gesetzt (ist aber eh' default). Das spart das Centerline.
    Geändert von hakaze (16-01-2013 um 16:13 Uhr)

  3. #3
    Registrierter Benutzer
    Registriert seit
    16.01.2013
    Beiträge
    19
    Hab Dank für deine Antwort, aber das weiß ich.

    Ich hätte mich nicht auf ein minimales Minimalbeispiel beschränken sollen.
    Das hier ist besser:

    Code:
    \documentclass{beamer}
    \begin{document}
    
    \begin{frame}
    \begin{columns}
    	\column{0.45\textwidth}
    		Alternativen
    	\column{0.55\textwidth}
    	\begin{overprint}
    		\includegraphics<2>[width = 1.0\columnwidth]{./messina}
    		\includegraphics<3>[width = 1.0\columnwidth]{./coastline}
    	\end{overprint}
    \end{columns}
    \end{frame}
    
    \end{document}
    Hier sieht man das Problem, welches ich im ersten Posting bereits ansprach: bei nur einem Bild ist \visible durchaus eine Lösung. Bei zwei Bildern, die nacheinander (übereinander) erscheinen sollen, geht das schon nicht mehr, weil dann der Platz für's erste Bild reserviert wird.

    Im Prinzip ist es wurscht, welche Bilder man nimmt, ich hänge sie trotzdem an.

    Zur Sache mit der Ausrichtung: ich muss Latex irgendwie immer erstmal sagen, dass die Bilder in die Mitte sollen, füge ich kein [c] oder \centerline ein, kleben die Bilder ganz links am Spaltenrand. Wieso wirkt sich das (Nicht)erscheinen des rechten Bildes überhaupt auf die vertikale Ausrichtung des linken Textes aus. Wenn [c] die horizontale Ausrichtung vornimmt, sollte das doch keinen Einfluss haben?!

  4. #4
    Registrierter Benutzer
    Registriert seit
    06.08.2008
    Beiträge
    1.015
    Mmh, das war in der Tat doch komplizierter als dein erster Anwendungsfall. Aber so geht's:
    Code:
    \documentclass{beamer}
    \begin{document}
    
    \begin{frame}
    \begin{columns}
    	\column{0.45\textwidth}
    		Alternativen
    	\column{0.55\textwidth}
    	\begin{overprint}[\columnwidth]
    		\onslide<2>\includegraphics[width = 1.0\columnwidth]{./messina}%
    		\onslide<3>\includegraphics[width = 1.0\columnwidth]{./coastline}%
    	\end{overprint}
    \end{columns}
    \end{frame}
    
    \end{document}
    Mit dem optionalen Argument wird die Breite des overprint-Bereichs festgelegt, ohne dass beamer sie ausrechnen müsste. Mit onslide werden dann die einzelnen Abbildungen eingefügt. Die Prozentzeichen verhindern, dass Latex noch Leerzeichen einfügt, die die Ausrichtung beeinflussen können.

  5. #5
    Registrierter Benutzer
    Registriert seit
    16.01.2013
    Beiträge
    19
    Ohja, das klappt!

    Wenn man den Inhalt nach \onslide in geschweifte Klammern setzt, ändert sich das Verhalten aber wieder...
    Latex ist mir manchmal unbegreiflich.

    Ich danke Dir für Deinen Hinweis und werde mich in Zukunft wohl nicht mehr mit diesem leidigen Problem rumplagen müssen.

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •