Ich habe zwei minipage-Umgebungen nebeneinander, in der ersten ist Text und in der zweiten eine Grafik. Beide sind mit [t] top-ausgerichtet. Jedoch ist die erste Textzeile mit der Unterkante der Grafik auf einer Linie.

Wie kann ich beide top ausrichten, also vertikal an ihren Oberkanten?

Beispiel:

Open in writeLaTeX
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage[demo]{graphicx}
\begin{document}
\begin{minipage}[t]{.5\textwidth}%
  \blindtext
\end{minipage}%
\begin{minipage}[t]{.5\textwidth}%
  \includegraphics[width=\textwidth]{test}%
\end{minipage}
\end{document}

Vertikale Ausrichtung falsch

gefragt 30 Mär '14, 06:27

Student's gravatar image

Student
4702577103
Akzeptiert: 96%


Neben Clemens' Paketlösung und Elkes systematischen Korrigieren klappt auch der "Trick", einfach nur

Open in writeLaTeX
\vspace{-\ht\strutbox}

direkt vor \includegraphics einzufügen. Grund: ursprünglich ist die Grundlinie aka baseline der Grafik unten, daher ist die Unterkante der Grafik mit der Grundlinie der 1. Zeile ausgerichtet. Ein einfaches \vspace{0pt} und schon ist die Grundlinie wieder oben (in meinem TeX Blog mal erwähnt), wir versetzen aber noch um -\ht\strutbox, damit es nicht an der Grundlinie der 1. Textzeile ausgerichtet wird, sondern an dessen Oberkante.

So ergänzt:

Open in writeLaTeX
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage[demo]{graphicx}
\begin{document}
\begin{minipage}[t]{.5\textwidth}%
  \blindtext
\end{minipage}%
\begin{minipage}[t]{.5\textwidth}%
  \vspace{-\ht\strutbox}\includegraphics[width=\textwidth]{test}%
\end{minipage}
\end{document}

Ausrichtung von Grafik und Text

Permanenter link

beantwortet 30 Mär '14, 13:55

stefan's gravatar image

stefan ♦♦
5.8k12134

bearbeitet 24 Mai '14, 12:32

esdd's gravatar image

esdd
14.2k53251

Die bequemste Variante ist wahrscheinlich das Paket adjustbox. Es bietet zahlreiche Optionen zum manipulieren und platzieren von Boxen (ain Bild ist nichts anderes). Es definiert zudem den Befehl \adjincludegraphics mit der gleichen Syntax wie \includegraphics, der aber zudem die Optionen von adjustbox erkennt. In diesem Fall etwa die Option valign=t:

Open in writeLaTeX
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage[demo]{graphicx}
\usepackage{adjustbox}
\begin{document}
\begin{minipage}[t]{.5\textwidth}
  \blindtext
\end{minipage}%
\begin{minipage}[t]{.5\textwidth}
  \adjincludegraphics[valign=t,width=\textwidth]{test}%
\end{minipage}
\end{document}

alt text

Permanenter link

beantwortet 30 Mär '14, 10:50

Clemens's gravatar image

Clemens
19.0k113060

Der Vorschlag von @Clemens ist sicher der praktischste, um die Oberkanten von Bild und Text aneinander auszurichten. Hier ist trotzdem eine Alternative für die kein zusätzliches Paket geladen werden muss. Mit \raisebox lässt sich die Abbildung einfach um ihre Gesamthöhe abzüglich der Höhe von \strutbox (siehe Was macht der Befehl strut?) nach unten verschieben:

Open in writeLaTeX
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage[demo]{graphicx}
\begin{document}
\noindent
\begin{minipage}[t]{.5\textwidth}
  \blindtext
\end{minipage}%
\begin{minipage}[t]{.5\textwidth}
  \raisebox{\dimexpr-\totalheight+\ht\strutbox\relax}{%
   \includegraphics[width=\linewidth]{test}%
  }
\end{minipage}
\end{document}
Permanenter link

beantwortet 30 Mär '14, 12:31

esdd's gravatar image

esdd
14.2k53251

Die zweite minipage ist hier übrigens eigentlich überflüssig. Stattdessen muss man dann aber natürlich die Breite der Grafik in .5\textwidth ändern.

(24 Mai '14, 13:03) Bes
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

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üge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×57
×24
×14

Frage gestellt: 30 Mär '14, 06:27

Frage wurde angeschaut: 20,114 Mal

Zuletzt aktualisiert: 24 Mai '14, 13:03