Seite 1 von 1

Itemize vertikale Ausrichtung

Verfasst: Mo 22. Dez 2014, 17:36
von Gast
Hi,

wie kann ich bei folgendem Beispiel
\documentclass[14pt]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\begin{document}
\begin{frame}
\frametitle{Das ist ein Test}
\begin{itemize}
\setlength{\arraycolsep}{0pt}
\setlength{\itemsep}{10pt}
\item Stichpunkt 1
\item Stichpunkt 2
\item $\left.\begin{array}{l}\text{oben}\\\text{unten}\end{array}\right\}$ mitte  $\left\{\begin{array}{l}\text{oben}\\\text{unten}\end{array}\right.$
\end{itemize}
\end{frame}
\end{document}
beim dritten Item erreichen, dass die obere Zeile des Textes "oben" bündig mit dem Itempunkt ist? Bislang ist er bündig mit dem mittleren Text.

Danke!

Verfasst: Di 23. Dez 2014, 00:52
von esdd
Du kannst den Inhalt mit \raisebox entsprechend nach unten verschieben.
\item \raisebox{\dimexpr-\height+\ht\strutbox\relax}{...}
Gruß
Elke

Verfasst: Mi 24. Dez 2014, 01:18
von Gast
Vielen Dank, Elke. Das hat gut geklappt. Ich hab in meinem Latexbuch leider wenig über raisebox gefunden. Gibt es dafür eine Dokumentation?
Isbesondere, was
\dimexpr-\height+\ht\strutbox\relax
genau bedeutet.

Verfasst: Mi 24. Dez 2014, 11:08
von esdd
Das erste Argument gibt an, um wie viel die Box verschoben werden soll. \dimexpr ... \relax beginnen und beenden die Berechnung einer Länge, in dem Fall der vertikalen Verschiebung. Mit \height kannst Du auf die Höhe (über der Grundlinie) der zu verschiebenden Box zu greifen, in Deinem Fall also der Gleichung. Wobei die Grundlinie Deiner Gleichung der Grundlinie von mitte entspricht. Damit die oberste Zeile aber auf Höhe des Bullets steht (und nicht darunter), muss die Gleichung wieder um die Höhe einer Zeile nach oben verschoben werden. Diese Höhe erhälst Du mit \ht\strutbox. Siehe dazu auch: Was macht \strut?

Gruß
Elke

Verfasst: Mi 24. Dez 2014, 11:38
von Besserwisser
Wenn man im Listing oben auf \raisebox klickt, kommt man übrigens zu einer Kurzanleitung des Befehls …

Verfasst: Mo 5. Jan 2015, 11:34
von Gast
Hallo Elke,

danke für die Erklärung. Noch eine Sache ist mir unklar:
esdd hat geschrieben:Mit \height kannst Du auf die Höhe (über der Grundlinie) der zu verschiebenden Box zu greifen, in Deinem Fall also der Gleichung. Wobei die Grundlinie Deiner Gleichung der Grundlinie von mitte entspricht. Damit die oberste Zeile aber auf Höhe des Bullets steht (und nicht darunter), muss die Gleichung wieder um die Höhe einer Zeile nach oben verschoben werden. Diese Höhe erhälst Du mit \ht\strutbox.
Der Unterschied zwischen \height und \ht. Ist \ht die komplette Höhe der strutbox (also oberhalb und unterhalb der Grundlinie)? Oder warum schreibt man einmal \height, um die Höhe der raisebox zu bekommen und \ht um die Höhe der strutbox zu bekommen?

zu \ht hab ich nur gefunden, dass es ein Tex-Primitive ist.

Verfasst: Mo 5. Jan 2015, 12:00
von Noch so einer
\strutbox ist eine TeX-Box (genauer ein Box-Register). Für solche Boxen gibt es einige Primitive, u. a.:
  • \ht<box> = Höhe der Box
  • \dp<box> = Tiefe der Box
  • \wd<box> = Breite der Box
Man muss hier also immer eine Box als Argument angeben.

Dagegen sind \width, \height, \depth und \totalheight Makros (oder Längen), die von LaTeX bei der Verarbeitung von \raisebox explizit definiert werden, um Zugriff auf die Dimensionen des Inhalts zu bieten. Sie haben daher auch kein Argument.

BTW: Du hast den Status "Rückfrage" falsch verwendet. Bitte informiere Dich über die Bedeutung.