PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabelleneintrag vertikal und horizontal zentriert



lutz
30-01-2007, 14:14
In der folgenden Tabelle erscheinen die Einträge weder vertikal noch horizontal zentriert. Mit Hilfe des \center{...}-Befehls wird die "0" in der 1. Zeile zwar horizontal zentriert. Wie kann ich die Einträge sowohl horizontal als auch vertikal zentrieren?


\begin{tabular}{p{5cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}| p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8 cm}}
zurückgelegte Wegstrecke $s$ in Metern & \center{0} & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 \\ \hline
dafür benötigte Zeit $t$ in Sekunden & 0 & & & & & & & \\ \hline \hline
Quotient $v = \frac{s}{t}$ in Metern pro Sekunde & & & & & & & & \\
\end{tabular}


http://www.webgraphics.at/macnews/Tabelle1.jpg

fragt sich lutz!

bobmalaria
30-01-2007, 14:19
moin moin,

hier scheint das gelöst zu sein:
http://mrunix.de/forums/showthread.php?t=41741

lutz
30-01-2007, 14:39
Mit folgendem Code siht es schon besser aus. Allerdings scheitere ich jetzt am Trennstrich zwischen 1. und 2. Spalte. Mit dem üblichen "|" erhalte ich zwar einen Strich nach der 2. Spalte, der Trennstrich zwischen 1. und 2. Spalte fehlt jedoch...

\documentclass{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[german]{babel}
\usepackage{array}
\begin{document}
\newcolumntype{C}[1]{>{\centering}m{#1}}
\begin{tabular}{C{5cm}l C{0.8cm}l}
zuruckgelegte Wegstrecke $s$ in Metern & 0 \\ \hline
dafur benotigte Zeit $t$ in Sekunden & 0 \\ \hline \hline
Quotient $v = \frac{s}{t}$ in Metern pro Sekunde & \\
\end{tabular}
\end{document}

http://www.webgraphics.at/macnews/Tabelle3.jpg

bobmalaria
30-01-2007, 14:59
hi,

so kannst du den strich reinmachen:

\begin{tabular}{C{5cm}|l C{0.8cm}l}

lutz
30-01-2007, 15:15
ok, jetzt habe ich mit folgendem Code

\newcolumntype{C}[1]{>{\centering}m{#1}}
\begin{tabular}{C{5cm}|lC{0.8cm}|lC{0.8cm}|lC{0.8c m}|lC{0.8cm}|lC{0.8cm}|lC{0.8cm}|lC{0.8cm}|lC{0.8c m}|lC{0.8cm}l}
zurückgelegte Wegstrecke $s$ in Metern & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 \\ \hline
dafür benötigte Zeit $t$ in Sekunden & 0 & & & & & & & & \\ \hline \hline
Quotient $v = \frac{s}{t}$ in Metern pro Sekunde & & & & & & & & & \\
\end{tabular}

schon mal (fast) das Gewünschte. Jetzt frage ich mich nur noch, warum der Trennstrich nicht zwischen jeder Spalte auftaucht...

Was ist denn in dem Code die genaue Bedeutung des l bzw. r?

http://www.webgraphics.at/macnews/Tabelle4.jpg

Man beachte den Unterschied zwischen | (alt + 7), und l (Buchstabe l), direkt hintereinander also |l (ungeeignete Schriftart! ;-))

bobmalaria
30-01-2007, 15:23
hi,

guckst du hier:


\begin{tabular}{|C{5cm}|l|C{0.8cm}|l|C{0.8cm}|l|C{ 0.8cm}|l|C{0.8cm}|l|C{0.8cm}|lC{0.8cm}|lC{0.8cm}|l C{0.8c m}|lC{0.8cm}l}
zurückgelegte Wegstrecke $s$ in Metern & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 \\ \hline
dafür benötigte Zeit $t$ in Sekunden & 0 & & & & & & & & \\ \hline \hline
Quotient $v = \frac{s}{t}$ in Metern pro Sekunde & & & & & & & & & \\
\end{tabular}

der strich | mache ich mit der alt taste + der taste rechts vom rechten shift.
dieser strich macht die vertikalen linien. c l und r sind normal die ausrichtung center, left, right.

http://img413.imageshack.us/img413/9581/unbenanntoo8.jpg (http://imageshack.us)

gruß

lutz
30-01-2007, 15:37
[QUOTE=bobmalaria;226660]hi,


der strich | mache ich mit der alt taste + der taste rechts vom rechten shift.
dieser strich macht die vertikalen linien. c l und r sind normal die ausrichtung center, left, right.

http://img413.imageshack.us/img413/9581/unbenanntoo8.jpg (http://imageshack.us)

ok, aber warum sind die Spalten jetzt doch unterschiedlich breit? Laut Definition sind doch alle 0.8 cm breit, im Screenshot haut es dann aber nicht mehr hin!

P.S.: Danke für deine Geduld! ;-)

MasterOfPuppets
30-01-2007, 15:46
Nein, in der Definition steht etwas wie ... l|C{0.8cm} ... Also ist eine Spalte beliebig breit und links ausgerichtet -> l (kleines | :)), die nächste ist dann 0,8cm breit.

lutz
30-01-2007, 15:55
Ich möchte aber alle (bis auf die erste Spalte) genau 0.8 cm breit haben. Wie lautet dann der entsprechende Code?

bobmalaria
30-01-2007, 15:56
hi,
da hast du recht,
habe es mal so geändert

\begin{tabular}{|C{5cm}|C{0.8cm}|C{0.8cm}|C{0.8cm} |C{0.8cm}|C{0.8cm}|C{0.8cm}|l|C{0.8cm}|lC{0.8c m}|lC{0.8cm}|}

zurückgelegte Wegstrecke $s$ in Metern & 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 \\ \hline
dafür benötigte Zeit $t$ in Sekunden & 0 & & & & & & & & \\
\hline \hline
Quotient $v = \frac{s}{t}$ in Metern pro Sekunde & & & & & & & & & \\
\end{tabular}

aus einem grund den ich nicht kenne, kann ich leider nicht in spalte 8 das "l"(L) entfernen. dann kommt es zu fehlern. leider ist die spalte dann aber in einer anderen breite.

vielleicht fällt den richtigen experten noch was ein :o

MasterOfPuppets
30-01-2007, 16:01
Ich möchte aber alle (bis auf die erste Spalte) genau 0.8 cm breit haben. Wie lautet dann der entsprechende Code?
Das hättest du bestimmt auch noch selbst hinbekommen ... :rolleyes:

rais
30-01-2007, 16:38
Moin moin,

aus einem grund den ich nicht kenne, kann ich leider nicht in spalte 8 das "l"(L) entfernen. dann kommt es zu fehlern. leider ist die spalte dann aber in einer anderen breite.

ihr habt den \arraybackslash in der Definition fuer die C-Spalte unterschlagen -- ohne diesen Befehl laeuft´s mit "\\" als Zeilentrenner innerhalb der Tabelle nicht. Also entweder \arraybackslash verwenden (vgl. mit Deinem Link) oder statt "\\" mit "\tabularnewline" arbeiten.
MfG,

bobmalaria
30-01-2007, 16:59
hi,

da hast du wohl recht.
doch selbst wenn ich das ändere bekomme ich immer noch fehlermeldungen.
so hab ich es aktuell geändert

\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}
\begin{tabular}{|C{5cm}|C{0.8cm}|C{0.8cm}|C{0.8cm} |C{0.8cm}|C{0.8cm}|C{0.8cm}|C{0.8cm}|C{0.8c m}|C{0.8cm}|}

zurückgelegte Wegstrecke $s$ in Metern& 0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 \\ \hline
dafür benötigte Zeit $t$ in Sekunden & 0 & & & & & & & & \\
\hline \hline
Quotient $v = \frac{s}{t}$ in Metern pro Sekunde & & & & & & & & & \\
\end{tabular}

erleuchte uns guru :rolleyes:

rais
30-01-2007, 17:06
vllt hast Du da ein vergleichbares Problem wie ich neulich unter tetex2, bei dem dort mitgeliefertem array-Paket hat´s auch gehakt, da in diesem Paket der \arraybackslash noch gar nicht definiert war (kam erst mit einer spaeteren Version von array). Wennn das bei Dir auch so ist, dann lade einfach zusaetzlich das tabularx-Paket, dann sollte das klappen... oder besorg Dir ne aktuelle Version vom array-Paket ;)
MfG,