Tabelle mit simplem Zeilenumbruch

Tabellen und Grafiken erstellen und anordnen


kahlchen
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: Mo 12. Okt 2009, 12:40

Tabelle mit simplem Zeilenumbruch

Beitrag von kahlchen »

Hallo,
ich bin ziemlich neu und daher auch unerfahren im Umgang mit TeX. Hier mein Quellcode:
\begin{table*}[ht]
						%\centering
						\begin{tabular}{ l|l|l|l|l } % senkrechten Striche
						       \textbf{Produkt} & \textbf{Lizensierungsart} & \textbf{Preis pro Einheit} & \textbf{Bestellmenge} &
						        \textbf{Preis}\\ 
									 \hline 
									  LOGINventory 4 & pro Computer & \texttt{\EUR{~~6}} & \texttt{150} & \texttt{\EUR{~900}} \\
									  LOGINventory 4 Webinterface & pro Installation & \texttt{\EUR{250}} & \texttt{~~5} & \texttt{\EUR{1250}} \\
									  LOGINventory 4 Update & pro Jahr & \texttt{~20\%} & \texttt{~ja} & \texttt{\EUR{~180}} \\
									  \\
									  \hline & & & \textbf{Gesamt:} & \texttt{\EUR{\textbf{2330}}}
									 \hline
						\end{tabular}
						\caption{LOGINventory 4 Lizensierungsbeispiel}
						\label{tab:LOGINventory 4 Lizensierungsbeispiel}
					\end{table*}
Es soll einfach in der ersten Spalte z.B. nach der "4" ein Zeilenumbruch erfolgen, damit die ganze Tabelle dann auch in der Breite auf die Seite passt.

Danke im Voraus für die Hilfe! :)

//EDIT
Noch eine kleine Frage, wie kann ich etwas in einer Tabellenzeile zentrieren?

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2759
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Tabelle mit mehrzeiligen Zellen

Beitrag von Stefan Kottwitz »

Hallo kahlchen,

willkommen im Forum!
Wenn Du p-Spalten statt l-Spalten verwendest, kann umgebrochen werden, automatisch oder auch durch \\. Beispielsweise
\begin{tabular}{ p{3cm}|l|l|l|l }
Passe die Spaltenbreite an für einen passenden Umbruch (2.8 cm etc.) oder schreibe in der Zelle
LOGINventory 4\\Webinterface &
Zentrieren kannst du spaltenweise mit c statt l bei den Spaltenformatparametern, oder Du verwendest \centering.

Viele Grüße,

Stefan

kahlchen
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: Mo 12. Okt 2009, 12:40

Beitrag von kahlchen »

Vielen Dank schonmal! :)
Das mit dem Zentrieren funktioniert gut.

Nur, wenn ich eine Zeile mit \\ umbreche, dann geht er ja automatisch eine Zeile tiefer und danach nicht wieder hoch, so dass die Überschriften ab \\ alle eine Zeile tiefer stehen. Wie kann ich das denn unterbinden?

Und zu dem p{3cm}, gibt das die Breite der ersten Spalte an? Wenn ja, wie kann denn weitere Spaltenbreiten angeben? Also nach der Ersten eben noch die Zweite?

Vielen Dank!

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2759
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Beitrag von Stefan Kottwitz »

p ist der Spaltentyp (p wie paragraph oder \parbox) und der Wert in den geschweiften Klammern die Breite dieser Spalte. Das geht narürlich auch für mehrere Spalten, also etwa
\begin{tabular}{p{3cm}|p{4cm}|p{3cm}|l|l}
In p-Spalten bzw. -Zellen kannst Du \\ verwenden, ohne dass die Tabellenzeile beendet wird, das gilt nur in der Zelle dann. Oder nimm \newline statt \\.

Stefan

kahlchen
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: Mo 12. Okt 2009, 12:40

Beitrag von kahlchen »

Vielen Dank. Er bricht nun die Zeilen automatisch um. Und wenn ich will, dass er umbricht, dann schreibe ich z.B. "Lizensierungs-art" statt "Lizensierungsart". Danke.

So, nun die nächsten Fragen :)

1. Wie kann ich denn eine ganze Spalte rechts ausrichten? Ich habe das mal wie im folgenden Quelltext zu sehen ist mit "r" versucht, klappt aber nicht.

2. Und dann müsste ich auch noch die ganze Tabelle irgendwie an den rechten, statt linken Seitenrand bekommen. :)
\begin{table*}[ht]
						\begin{tabular}{p{3.1cm} p{2.8cm} p{1.9cm} p{1.6cm} p{1.4cm} l l r r r }
						       \textbf{Produkt} & \textbf{Lizensierungs-art} & \textbf{Preis pro Einheit} & \textbf{Bestell-menge} & \textbf{Preis}\\ 
									 \hline 
                             ...
									 \hline
						\end{tabular}
						\caption{LOGINventory 4 Lizensierungsbeispiel}
						\label{tab:LOGINventory 4 Lizensierungsbeispiel}
\end{table*}
Vielen Dank schonmal :)

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2759
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Tabellenausrichtung

Beitrag von Stefan Kottwitz »

1. geht mit r, im Beispielcode hast Du die Spalten nur nicht verwendet, nicht gefüllt,

2. funktioniert mit \raggedleft oder der flushright-Umgebung.
\documentclass[a4paper,10pt]{article}
\begin{document}
\begin{table}[ht]
\raggedleft
\begin{tabular}{rr}
abc & def \\
1 & 2
\end{tabular}
\caption{Test}
\label{tab:test}
\end{table}
\end{document}
Stefan

kahlchen
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: Mo 12. Okt 2009, 12:40

Beitrag von kahlchen »

Danke, 2. funktioniert gut. :)
Aber das mit "r" geht irgendwie nicht. Ich habe die Tabelle schon mit Daten gefüllt, hab's nur für's Beispiel mit ... ersetzt.
Aber vllt. liegt das auch an der Tabelle zuvor. Da bekomme ich noch Fehlermeldungen wegen \infty, also dem Unendlichzeichen. Kannst du da auch mal kurz schauen bitte?
\begin{table*}[ht]
						\raggedleft
						\begin{tabular}{p{4.5cm}p{4.5cm}lr} 
						       \textbf{Anzahl Lizenzen} & \textbf{Kosten pro Computer} \\ 
									 \hline 
									 \texttt{~~~1 - ~199} & \texttt{\EUR{6}} \\
									 \texttt{~200 - ~499} & \texttt{\EUR{5}} \\
									 \texttt{~500 - 2499} & \texttt{\EUR{4}} \\
									 \texttt{2500 - 4999} &  \texttt{\EUR{3,8}} \\
									 \texttt{5000 - 7999} &  \texttt{\EUR{3,6}} \\
									 \texttt{8000 - } \infty &  \texttt{\EUR{3,2}} \\
									 \hline
						\end{tabular}
						\caption{LOGINventory 4 Client-Lizenzkosten}
						\label{tab:LOGINventory 4 Client-Lizenzkosten}
\end{table*}
Da funktioniert das "r" auch schon nicht :/

1000 Dank nochmal!

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2759
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Tabellenausrichtung

Beitrag von Stefan Kottwitz »

Das \infty muss im Mathematik-Modus stehen, weil es ein mathematisches Symbol ist:
$\infty$
Weiterhin deklarierst Du 4 Spalten: p, p, l und r, jedoch verwendest Du nur die beiden p-Spalten. Wenn Du hier nur \begin{tabular}{rr} schreibst, siehst Du die Änderung.

Stefan

kahlchen
Forum-Anfänger
Forum-Anfänger
Beiträge: 40
Registriert: Mo 12. Okt 2009, 12:40

Beitrag von kahlchen »

Ahhh, jetzt klappts. Ich dachte das "r" oder "l" wäre noch eine Option für die "p"-Spalte... daher die Verwirrung. Aber alles funktioniert leider immer noch nicht. Wenn ich statt "p" mein "r" schreibe, damit alles schön rechts ist dann klappt das gut. Allerdings bricht er jetzt meine Wörter nicht mehr um. :(

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2759
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Tabellenausrichtung

Beitrag von Stefan Kottwitz »

Dann kombinieren wir eben p und rechtsbündig, verwenden dafür die Pakete ragged2e und array:
\usepackage{ragged2e}
\usepackage{array}
...
\begin{tabular}{>{\RaggedLeft}p{3cm}r}
...
Stefan

Antworten