Anzeige:
Ergebnis 1 bis 11 von 11

Thema: Tabelle: feste Spaltenbreite und zentrierter Text

  1. #1
    Registrierter Benutzer
    Registriert seit
    17.12.2005
    Beiträge
    300

    Tabelle: feste Spaltenbreite und zentrierter Text

    Hi allerseits,

    ich möchte bei einer Tabelle sowohl eine feste Spaltenbreite angeben, als auch den Text in allen Spalten zentriert ausrichten. Bislang ist mir immer nur eins von beiden gelungen. Wenn ich mit mit p{2cm} die Spaltenbreite angebe, wird der Text linksbündig ausgerichtet. Wenn ich das mit \multicolumn{1}{c}{Text} umgehen möchte, dann geht das nur dann, wenn mindestens ein Element einer Spalte linksbündig bleibt

    tabularx habe ich mir auch schon angesehen. Ich verstehe aber die Anwendung nicht bzw. ob mir das hier etwas nützt.

    Kurzes Beispiel. Wird die letzte Tabellenzeile auskommentiert, wird alles wieder schmal

    Code:
    \documentclass[a4paper,12pt]{scrartcl}
    \usepackage[latin1]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage{ngerman}
    
    \begin{document}
    \begin{tabular}{p{3cm}p{3cm}p{3cm}}
    \multicolumn{1}{c}{Hier} & \multicolumn{1}{c}{steht} & \multicolumn{1}{c}{Text} \\
    \multicolumn{1}{c}{noch} & \multicolumn{1}{c}{mehr} & \multicolumn{1}{c}{Text} \\
    hier & noch & mehr \\
    \end{tabular}
    \end{document}

  2. #2
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.859
    Moin moin,
    ist das nix für Dich?
    MfG,
    Rainer
    There's nothing a good whack with a hammer won't fix!

  3. #3
    Registrierter Benutzer
    Registriert seit
    17.12.2005
    Beiträge
    300
    Ja, das sieht gut aus. Zum zweiten mal heute Danke an dich

    Gruß
    Hobbes

  4. #4
    Registrierter Benutzer
    Registriert seit
    17.12.2005
    Beiträge
    300
    Habe es eben ausprobiert. Habe aber leider das gleiche Problem wie mit meinem ersten Ansatz. Beim rumprobieren habe ich festgestellt, dass es entweder dann geht, wenn ich genau eine Spalte (siehe obere Tabelle im Beispiel) mache, oder mindestens eine ohne das neu definierte Spaltenformat Oder hat jemand eine andere Erklärung, warum die untere Tabelle im Beispiel nicht funktioniert?

    Code:
    \documentclass{article}
    \usepackage[latin1]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage[german]{babel}
    \usepackage{array}
    \begin{document}
    \newcolumntype{C}[1]{>{\centering}m{#1}}
    
    \begin{tabular}{C{2cm}}
    safd\\
    asdfd\\
    saf
    \end{tabular}
    
    %\begin{tabular}{C{2cm}r}     %<--- damit geht es
    \begin{tabular}{C{2cm}C{2cm}}     %<--- damit geht es nicht
    \hline
    Ein etwas langer Text, der sicherlich umbrochen wird & a\\
    \hline
    oder kurz & b\\
    \hline
    \end{tabular}
    \end{document}

  5. #5
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.859
    Hmm,
    also warum das so war, weiß ich jetzt auch nicht mehr, aber ersetze mal die \\ innerhalb der Tabelle durch \tabularnewline, dann sollte es auch mit {C{..}C{..}} funzen.
    MfG,
    Rainer
    There's nothing a good whack with a hammer won't fix!

  6. #6
    Registrierter Benutzer Avatar von countbela666
    Registriert seit
    15.04.2005
    Ort
    Berlin
    Beiträge
    2.317
    Hallöchen,

    das Problem ist die Umdefinierung des \\ durch das array- oder auch tabularx-Paket. Folgendes sollte bei der Nutzung eigener Spaltendefinitionen für die letzte Spalte Abhilfe schaffen:
    Code:
    \documentclass{article}
    \usepackage[latin1]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage[german]{babel}
    \usepackage{array}
    \begin{document}
    \newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}
    
    \begin{tabular}{C{2cm}}
    safd\\
    asdfd\\
    saf
    \end{tabular}
    
    %\begin{tabular}{C{2cm}r}     %<--- damit geht es
    \begin{tabular}{C{2cm}C{2cm}}     %<--- damit geht es jetzt auch ;)
    \hline
    Ein etwas langer Text, der sicherlich umbrochen wird & a\\
    \hline
    oder kurz & b\\
    \hline
    \end{tabular}
    \end{document}
    Grüße,
    Marcel

    Listen to me children of the night, beyond the doors of darkness you will find
    a thousand worlds for you to see here, take my hand and follow me...

  7. #7
    Registrierter Benutzer
    Registriert seit
    17.12.2005
    Beiträge
    300
    Klappt alles prima *freu*. Danke für die Hilfe

  8. #8
    Registrierter Benutzer
    Registriert seit
    03.01.2007
    Beiträge
    14
    Hallo, ich würde gerne meine Tabelle genauso gestalten, aber wenn ich das alles eingebe, dann bekomme ich die Fehlermeldung

    Package array error: Illegal pream-token (0.025\textwidth): 'c' used

    Heißt das, dass ich auch ein zu altes array-package habe wie Rais in dem anderen Thread schon geschrieben hat und ich deshalb Probleme mit dem \arraybackslash bekomme?

    Wenn ja, ich hab keinen Plan wie ich ein neues array-package bekommen kann, ich benutze MikTex aber ich finde keine array-packages in der Liste und der Update-Manager hat auch nicht geholfen.....

    Oder gibts noch eine andere Fehlerquelle?

    Code:
    \documentclass[12pt, a4paper, twocolumn]{article}
    \usepackage{array}
    \newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
    
    \begin{document}
    
        \begin{table}[h]\caption{Eine Caption}
                \begin{tabular}{|C{.05\textwidth}||*{8}C{.025\textwidth}|}}
                    \hline
                    Erste Zeile &&&&&&&&\\ 
                    \hline
                    Noch ne Zeile &&&&&&&&
                \end{tabular}\label{Nachbarschaft}
         \end{table}
    
    \end{document}
    Und ja, das [h] ist böse ;-)


    Wäre cool, wenn mir einer helfen könnte! Gruß Alex
    Geändert von vizechecker (07-01-2007 um 15:33 Uhr)

  9. #9
    Registrierter Benutzer Avatar von sofa-surfer
    Registriert seit
    23.05.2006
    Beiträge
    2.032
    Zitat Zitat von vizechecker Beitrag anzeigen
    Hallo, ich würde gerne meine Tabelle genauso gestalten, aber wenn ich das alles eingebe, dann bekomme ich die Fehlermeldung

    Package array error: Illegal pream-token (0.025\textwidth): 'c' used

    Heißt das, dass ich auch ein zu altes array-package habe wie Rais in dem anderen Thread schon geschrieben hat und ich deshalb Probleme mit dem \arraybackslash bekomme?

    Wenn ja, ich hab keinen Plan wie ich ein neues array-package bekommen kann, ich benutze MikTex aber ich finde keine array-packages in der Liste und der Update-Manager hat auch nicht geholfen.....

    Oder gibts noch eine andere Fehlerquelle?

    Code:
    \documentclass[12pt, a4paper, twocolumn]{article}
    \usepackage{array}
    \newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
    
    \begin{document}
    
        \begin{table}[h]\caption{Eine Caption}
                \begin{tabular}{|C{.05\textwidth}||*{8}C{.025\textwidth}|}}
                    \hline
                    Erste Zeile &&&&&&&&\\ 
                    \hline
                    Noch ne Zeile &&&&&&&&
                \end{tabular}\label{Nachbarschaft}
         \end{table}
    
    \end{document}
    Und ja, das [h] ist böse ;-)


    Wäre cool, wenn mir einer helfen könnte! Gruß Alex
    Hallo,

    ich glaub du hast da nen kleinen Fehler drin:
    Mach mal aus
    Code:
    \begin{tabular}{|C{.05\textwidth}||*{8}C{.025\textwidth}|}}
    Code:
    \begin{tabular}{|C{.05\textwidth}||*{8}{C{.025\textwidth}|}}
    Aber sind diese Breitenangaben nicht generell etwas _sehr_ klein?

    Matthias

  10. #10
    Registrierter Benutzer
    Registriert seit
    03.01.2007
    Beiträge
    14
    Heilige Sch***, ich schäme mich in Grund und Boden, du hast Recht...

    Ich werd nie wieder Fragen stellen :-(

    Vielen Dank, jetzt gehts super. Die Spaltenbreiten sind meinerMeinung nach auch zu klein, da ich zweispaltig schreibe, sollte die Summe ja eine halbe Textbreite ergeben, aber es klappt nur, wenn sie eine Viertelbreite einnehmen. Versteh ich auch nicht, aber is so

  11. #11
    Registrierter Benutzer Avatar von sofa-surfer
    Registriert seit
    23.05.2006
    Beiträge
    2.032
    Zitat Zitat von vizechecker Beitrag anzeigen
    Vielen Dank, jetzt gehts super. Die Spaltenbreiten sind meinerMeinung nach auch zu klein, da ich zweispaltig schreibe, sollte die Summe ja eine halbe Textbreite ergeben, aber es klappt nur, wenn sie eine Viertelbreite einnehmen. Versteh ich auch nicht, aber is so
    Zwischen den Spalten ist noch ein zusätzlicher Abstand freigelassen. Schau mal in eine allgemeine Latex-Einführung deiner Wahl. Eine Forensuche nach \tabcolsep sollte auch einige Infos liefern.

    Matthias

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •