In folgendem Aufbau hätte ich gerne, dass die Bilder nicht untereinander sitzen sondern sich versetzt über die Seitenbreite strecken. Das 5. Bild soll wieder alleine die gesamte Breite ausfüllen. Neben den Bildern soll unten rechts bzw. unten links bündig ein Textfeld sitzen.

Öffne in Overleaf
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\noindent
\begin{minipage}[b]{1\textwidth}
  \includegraphics[width=.49\linewidth]{example-image-a}
\end{minipage}
  \hfill
\begin{minipage}[b]{1\textwidth}
  \includegraphics[width=.49\linewidth]{example-image-b}
\end{minipage}
  \hfill
\begin{minipage}[b]{1\textwidth}
  \includegraphics[width=.49\linewidth]{example-image-a}
\end{minipage}
  \hfill
\begin{minipage}[b]{1\textwidth}
  \includegraphics[width=.49\linewidth]{example-image-b}
\end{minipage}
 \begin{minipage}[b]{1\textwidth}
  \includegraphics[width=.1\linewidth]{example-image-b}
\end{minipage}
\end{document}

In PPT skizziert soll es so aussehen:

alt text

Wie schaffe ich diese Schrittweise Verschiebung der Bilder?

gefragt 16 Feb '17, 09:24

GlobalArts's gravatar image

GlobalArts
21911621
Akzeptiert-Rate: 50%

bearbeitet 16 Feb '17, 11:04

Ijon%20Tichy's gravatar image

Ijon Tichy
9.6k31227

Aus dem Beispiel geht für mich nicht hervor, was "Text A", und "Text B" sein soll. Wenn es nur um die Bilder aus dem Beispiel geht: Lass die minipage-Umgebungen weg, mach nach jedem \includegraphics[…]{…} (wobei eine Angabe width=\textwidth dann natürlich nicht sinnvoll ist) einen Absatz und verschiebe sie mit \hspace*{…} statt \hfill dort hin, wo Du sie haben willst.

(16 Feb '17, 10:43) saputello

Was die Frage mit minipage zu tun hat und wozu diese im Code-Beispiel der Frage dienen sollen, ist mir leider absolut nicht klar. Zum Setzen nur von Bildern (wie im Code-Beispiel der Frage) sind diese jedenfalls weder notwendig noch hilfreich. Ich habe daher im Titel, im Thema und im letzten Satz minipage durch Bild ersetzt. Für die Beantwortung sollte es auch unerheblich sein, ob Bilder, minipages, Buchstaben, Boxen oder Raketen verschoben werden.

(16 Feb '17, 12:02) Ijon Tichy

Horizontale Verschiebung geht bei LaTeX allgemein mit \hspace{<Wert>} bzw. \hspace*{<Wert>}. Die Anweisung und der Unterschied zwischen den beiden Versionen ist in jeder ausführlichen LaTeX-Einführung dokumentiert. Daher empfehle ich unbedingt, eine solche zu lesen.

Hier ein einfaches Beispiel:

Öffne in Overleaf
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{flushleft}
\includegraphics[height=.19\textheight,width=.5\linewidth]{example-image-a}

\hspace*{.167\linewidth}\includegraphics[height=.19\textheight,width=.5\linewidth]{example-image-b}

\hspace*{.333\linewidth}\includegraphics[height=.19\textheight,width=.5\linewidth]{example-image-a}

\hspace*{.5\linewidth}\includegraphics[height=.19\textheight,width=.5\linewidth]{example-image-b}

\includegraphics[height=.19\textheight,width=\linewidth]{example-image-a}
\end{flushleft}
\end{document}

fünf Bilder wild verteilt

Soll das Ganze in einer Gleitumgebung verwendet werden, ersetzt man die flushleft-Umgebung natürlich durch die Anweisung \raggedright. In einem Dokument, das nur aus einer Seite besteht, kann man ebenfalls \raggedright verwenden.

Wenn man zu faul zum rechnen ist, kann man das auch TeX überlassen. Da vier Bilder über die Gesamtbreite zu verteilen sind, sind insgesamt drei Teile weiß zu verteilen. Die verteilen wir nun einfach mit Hilfe von \stretch:

  1. in der ersten Zeile alle drei Teile rechts vom Bild (kann wegen flushleft bzw. \raggedright entfallen),
  2. in der zweiten Zeile ein Teil links vom Bild und zwei Teile rechts davon
  3. in der dritten Zeile zwei Teile links vom Bild und einen Teil rechts davon
  4. in der dritten Zeile alle drei Teile links vom Bild:
Öffne in Overleaf
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\raggedright
\includegraphics[height=.19\textheight,width=.5\linewidth]{example-image-a}

\hspace*{\stretch{1}}\includegraphics[height=.19\textheight,width=.5\linewidth]{example-image-b}\hspace*{\stretch{2}}

\hspace*{\stretch{2}}\includegraphics[height=.19\textheight,width=.5\linewidth]{example-image-a}\hspace*{\stretch{1}}

\hspace*{\stretch{3}}\includegraphics[height=.19\textheight,width=.5\linewidth]{example-image-b}

\includegraphics[height=.19\textheight,width=\linewidth]{example-image-a}
\end{document}

Experimentierfreudige ersetzen noch \stretch{3} in der vierten Bildzeile durch \stretch{1} und stellen fest, dass das ebenfalls funktioniert. Das liegt daran, dass TeX hier jede Zeile für sich betrachtet. Ein Unterschied ergibt sich daher nur, wenn mehr als ein \stretch in einer Zeile steht. Dann bestimmen die Zahlen das Verhältnis der Abstände zueinander.

Will man zusätzlichen vertikalen Abstand zwischen den Bildern, kann man bei den Absätzen beispielsweise zusätzlich jeweils ein \medskip einfügen. Zufällig habe ich die Höhe der Bilder so gewählt, dass das dann gerade noch auf die Seite passt. Bei \bigskip statt \medskip muss man hingegen die Höhe der Bilder dann entsprechend reduzieren, da das ganze sonst nicht mehr auf die Seite passt und das letzte Bild auf die nächste Seite umbrochen wird.

Permanenter link

beantwortet 16 Feb '17, 10:56

Ijon%20Tichy's gravatar image

Ijon Tichy
9.6k31227
Akzeptiert-Rate: 53%

bearbeitet 16 Feb '17, 12:01

Der Hintergrund der minipage Umgebung war ursprünglich, dass wie in meinem PowerPoint Bild jedes Bild eine eigene Beschriftung rechts bzw. links unten in der Ecke bekommen sollte. Für einen ähnlichen Ansatz hatte ich ebenfalls von euch den Tipp der Minipages bekommen...daher dachte ich dies wäre auch hier zielführend.

Die Anordnung der Bilder in deiner Antwort passt, nur hätte ich wie beschrieben gerne noch die "Text" - Elemente an den gezeigten Positionen.

(16 Feb '17, 12:03) GlobalArts

@GlobalArts: Wie von Ijon bereits im Kommentar zu Deiner Frage erwähnt, spielt es absolut keine Rolle, was Du verschiebst. Natürlich kannst Du auf diese Weise keine minipage verschieben, deren Breite du auf die Breite des Textbereichs festgelegt hast. Aber das ja selbstverständlich. Was bereits die Breite des Textbereichs hat, kann nicht mehr innerhalb des Textbereichs horizontal verschoben werden. Aber Tabellen, varwidth-Umgebungen, minipage-Umgebungen geringer Breite oder (wie von Ijon erwähnt) Raketen kann man auf genau dieselbe Art verschieben.

(16 Feb '17, 15:17) saputello

@GlobalArts: Aus dem Code deines Minimalbeispiels ist die Verwendung von zusätzlichem Text nicht ersichtlich. Ich sehe auch nicht, dass dafür eine minipage irgendwie dienlich wäre. Also werde ich darauf auch nicht weiter eingehen.

(16 Feb '17, 15:21) Ijon Tichy
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:

×30
×3
×2

gestellte Frage: 16 Feb '17, 09:24

Frage wurde gesehen: 7,204 Mal

zuletzt geändert: 16 Feb '17, 15:21