Definiert ist \strut
im LaTeX-Kernel, der Datei latex.ltx
, folgendermaßen:
\newbox\strutbox
\def\strut{\relax\ifmmode\copy\strutbox\else\unhcopy\strutbox\fi}
Das Makro \set@fontsize
, das z.B. von \selectfont
aufgerufen wird, enthält folgende Anweisung:
\setbox\strutbox\hbox{%
\vrule\@height.7\baselineskip
\@depth.3\baselineskip
\@width\z@}%
Das bedeutet, \strut
ist eine Box (man erinnere sich: alles, was TeX setzt, auch jeder Buchstabe, sind in TeXs Augen Boxen), die eine vertikale Linie mit der Breite 0
aber mit einer Höhe von 70% der aktuellen \baselineskip
, also dem Abstand einer Grundlinie zur nächsten, und mit einer Tiefe von 30% der aktuellen \baselineskip
enthält.
Verwendet wird \strut
oder die \strutbox
z.B. intern in Tabellenzeilen einer tabular
, um zu gewährleisten, dass eine Zeile auch dann die richtige Höhe und Tiefe hat, wenn sie z.B. nur Buchstaben ohne Unter- und Oberlänge enthält, also Kleinbuchstaben wie a
, c
, e
, m
, n
usw.
Das plain TeX Format enthält übrigens eine ganz ähnliche Definition (in plain.tex
):
\newbox\strutbox
\setbox\strutbox=\hbox{\vrule height8.5pt depth3.5pt width\z@}
\def\strut{\relax\ifmmode\copy\strutbox\else\unhcopy\strutbox\fi}
beantwortet
17 Aug '13, 00:33
cgnieder
22.1k●25●34●63
Akzeptiert-Rate:
60%