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●26●34●63
Akzeptiert-Rate:
60%