Anzeige:
Ergebnis 1 bis 6 von 6

Thema: mehrzeiliger Text in multicolumn-Spalte

  1. #1
    Registrierter Benutzer
    Registriert seit
    04.09.2009
    Beiträge
    68

    mehrzeiliger Text in multicolumn-Spalte

    Hallo,

    ich möchte mehrzeiligen Text mit 'raggedright' in eine multicolumn-Spalte schreiben, siehe Minimalbeipiel:
    Es gibt eine Fehlermeldung:
    "..something's wrong perhaps a missing item"
    Was mache ich da falsch?

    Danke für Eure Hilfe!

    Code:
    \documentclass[landscape]{article}
    \usepackage[left=10mm,right=1mm,top=5mm,bottom=20mm,showframe]{geometry}
    %
    \begin{document}
    \begin{tabular}{|p{6cm}|p{5cm}|p{6cm}|p{5cm}|}
    \multicolumn{2}{@{}l}{ 
    \raggedright
    bla bla bla1\\
    bla bla bla1
    }
    &
    \raggedright
    Definition:\\
    bla bla bla2\\
    bla bla bla2\\
    bla bla bla2
    &
    14 
    \\\hline
    21
    &
    22 
    &
    23
    &
    24 
    \\\hline
    \end{tabular} 
    \end{document}

  2. #2
    Registrierter Benutzer
    Registriert seit
    11.09.2005
    Beiträge
    1.712
    Du definierst die multicolumn-Zelle nur mit "l", aber in einer l-Spalte kann nicht umbrochen werden, das geht nur in p-Spalten. Also musst du die Breite definieren. Wenn die Zelle exakt gleich breit sein soll wie die beiden Spalten zusammen, wäre der Code so:
    Code:
    \documentclass[landscape]{article}
    \usepackage[left=10mm,right=1mm,top=5mm,bottom=20mm,showframe]{geometry}
    \usepackage{calc}
    %
    \begin{document}
    \begin{tabular}{|p{6cm}|p{5cm}|p{6cm}|p{5cm}|}
    \multicolumn{2}{@{}p{11cm+3\tabcolsep}}{%
    \raggedright
    bla bla bla1\newline
    bla bla bla1%
    }
    &
    \raggedright
    Definition:\\
    bla bla bla2\\
    bla bla bla2\\
    bla bla bla2
    &
    14 
    \\\hline
    21
    &
    22
    &
    23
    &
    24 
    \\\hline
    \end{tabular} 
    \end{document}
    Geändert von Xenara (10-09-2009 um 12:55 Uhr) Grund: Anzahl der \tabcolsep falsch berechnet.

  3. #3
    Registrierter Benutzer
    Registriert seit
    04.09.2009
    Beiträge
    68
    .. vielen lieben Dank, xenara, für die schnelle Antwort! Das hilft mir sehr viel weiter und das habe ich nirgendwo gefunden bisher.

    ..bedeutet "+4", plus tabcolsep 4 ? in welcher Einheit? Gibt es eine Doku in der so etwas beschrieben ist, vielleicht mit Beispiel?

    Gruß
    Annette

  4. #4
    Registrierter Benutzer
    Registriert seit
    11.09.2005
    Beiträge
    1.712
    Beim Formulieren der Erklärung fällt mir gerade auf, dass ich im MB falsch gerechnet habe, es muss 3\tabcolsep statt 4\tabcolsep heissen, habs korrigiert.

    Die Erklärung:
    Die Breite, die du mit den p-Spalten angeben kannst, ist die, die der Text an Platz einnehmen darf. Damit zwischen den Spalten aber noch etwas Platz bleibt, ist ein kleiner Abstand dazwischen. Dieser Abstand ist \tabcolsep\tabcolsep wird jeweils direkt am Anfang einer Spalte und am Ende eingefügt, also 2x pro Spalte.
    In deinem Fall muss man es 3x für die 2 Spalten hinzuzählen, weil du die multicolumn mit @{} dazu zwingst, ihren eigentlichen Einzug (also \tabcolsep) am Anfang zu ignorieren. Der \tabcolsep-Abstand zur 3. Spalte soll nicht geändert werden. Das ginge, wenn man am Ende der Breitendefinition der multicolumn nochmal ein @{} einfügt. Dann müssten es 4\tabcolsep sein.

    Mit dem Paket calc ist es dann möglich, Längenangaben nicht absolut setzen zu müssen, sondern LaTeX berechnet sie selbst (sonst müsste man wissen, wie breit \tabcolsep wirklich ist).
    Setzt man also "11cm+\tabcolsep", dann werden die 11cm absolut genommen (die ja auch so über die p-Spalten definiert sind) und \tabcolsep wird als Variable behandelt.
    Den Wert dieser Variablen kennt LaTeX ja (sonst könnte er es nicht setzen).
    Vorteil ist auch, wenn du den Wert von \tabcolsep aus irgendwelchen Gründen änderst, wir das mit berücksichtigt.

    Eine Doku, in der alle LaTeX-Längen beschrieben sind, habe ich leider noch nicht gefunden.

  5. #5
    Registrierter Benutzer
    Registriert seit
    04.09.2009
    Beiträge
    68
    .. danke, dass Du mir das so ausführlich erklärst, so dass ich es auch verstehen kann, das hat für mich unheimlichen Wert und motiviert, super!

  6. #6
    Registrierter Benutzer
    Registriert seit
    11.09.2005
    Beiträge
    1.712
    Dann viel Spass weiterhin mit LaTeX

Stichworte

Lesezeichen

Berechtigungen

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