Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Tabelle: Zellenhöhe, Textposition

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.02.2013
    Beiträge
    122

    Tabelle: Zellenhöhe, Textposition

    Hallo zusammen,

    für mein Tabellenbeispiel würde ich gerne noch

    - die Zellenhöhe durch einen Zentimeterwert direkt vorgeben
    - die Texte "Text 1" und "Text 2" vertikal und horizontal zentrieren
    - die Textfelder in der rechten Spalte vertikal zentrieren, aber linksbündig lassen

    Ist soetwas möglich?

    Viele Grüße
    Fite

    Code:
    %% Dokumentklasse
    \documentclass[11pt,a4paper]{article}
    
    %% Pakete allgemein
    \usepackage[utf8]{inputenc} 
    \usepackage[ngerman]{babel}
    
    % Seitenlayout
    \usepackage{geometry}
    \geometry{a4paper, top=25mm, left=25mm, right=25mm, bottom=20mm, headsep=10mm, footskip=12mm}
    \textwidth160mm
    \textheight252mm
    \headheight5.5mm
    
    %% Tabellen
    \usepackage{tabularx}
    \usepackage{colortbl}
    \definecolor{hgrau}{rgb}{0.85,0.85,0.85} 
    
    
    \begin{document}
    
    \begin{table}[htbp]
    \centering
    
    \begin{tabular}{|p{3cm}|p{10cm}|}\hline 
    \cellcolor{hgrau}\textbf{Text 1} & In dieser Zelle steht ein relativ langer Text, der wahrscheinlich über zwei Zeilen geht.\\\hline\hline
    \cellcolor{hgrau}\textbf{Text 2} & In dieser Zelle steht ein relativ langer Text, der wahrscheinlich über zwei Zeilen geht.\\\hline
    \end{tabular} 
    \caption{Beschriftung der Tabelle}
    \end{table}
    
    \end{document}

  2. #2
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Zitat Zitat von Fite Beitrag anzeigen
    für mein Tabellenbeispiel würde ich gerne noch

    - die Zellenhöhe durch einen Zentimeterwert direkt vorgeben
    Innerhalb einer Zelle könntest Du einfach \rule{0pt}{Höhe} verwenden oder dem benachbarten \\ ein optionales Argument mitgeben. Evtl. genügt auch ein Vergrössern von \arraystretch (>1).
    Vllt suchst Du auch so etwas wie \extrarowheight (vgl. `texdoc array'), mit dem Du etwas (mehr) Abstand zwischen Text und einer etwaigen Linie darüber bekämst.
    Meiner einer nutzt hier meist das booktabs-Paket (vgl. `texdoc booktabs'), damit hätte ich das Problem gar nicht erst, OTOH nutze ich auch keine vertikalen Linien in Tabellen ...

    Apropos vertikale (und doppelte) Linien: schau Dir mal mori, tabsatz und/oder die booktabs-Aneitung an.
    Mori/tabsatz findest Du unter den Top Ten im HowTo verlinkt.

    Wenn so eine Höhenangabe aber per Spaltendeklaration erfolgen soll, müsstest Du Dir erstmal einen passenden Spaltentyp deklarieren, etwa
    Code:
    \newcolumntype{V}[2]{>{\minipage[c][#1][c]{#2}\centering\arraybackslash}c<{\endminipage}}
    -- auch \newcolumntype benötigt das array-Paket, das Du hier aber nicht selbst zu laden brauchst (tabularx/colortbl fordern das array-Paket bereits an).
    Danach könntest Du dann mit V{Höhe}{Breite} statt p{Breite} in der Spaltendeklaration eine entsprechende Spalte anfordern.
    Zitat Zitat von Fite Beitrag anzeigen
    - die Texte "Text 1" und "Text 2" vertikal und horizontal zentrieren
    - die Textfelder in der rechten Spalte vertikal zentrieren, aber linksbündig lassen
    cm{Breite2} oder
    >{\centering}m{Breite1}m{Breite2}
    oder halt
    V{Höhe}{Breite1}m{Breite2}
    in der Spaltendeklaration sollten so tun.
    ``Linksbündig'' wird die zweite Spalte dadurch allerdings nicht (und war sie als p-Spalte auch nicht), vielmehr bleibt hier Blocksatz aktiv.
    Wenn die zweite Spalte wirklich linksbündig sein soll, ergänze die zweite Spaltendeklaration zu
    >{\raggedright\arraybackslash}m{Breite2}

    >{..}, <{..} und m{..} hast Du übrigens auch dem array-Paket zu verdanken.

    VG
    Rainer
    There's nothing a good whack with a hammer won't fix!

  3. #3
    Registrierter Benutzer
    Registriert seit
    08.02.2013
    Beiträge
    122
    Vielen Dank!

Lesezeichen

Berechtigungen

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