Wie kann ich die Breite der Spalten automatisch festlegen und die Ausrichtung beibehalten?

Wie kann ich die Breite der Spalten automatisch festlegen und die Ausrichtung beibehalten?

Wie kann ich die Breite der Spalten automatisch festlegen und die Ausrichtung beibehalten? Ist es möglich, die LC-Ausrichtung mithilfe der X-Spalte festzulegen? Vielen Dank

\documentclass{article}

\begin{document}
hdghdggggggggfhgfhdgfhd hggdgfh  gfhdgfhjghjhj hgfhdgjghjgd ghfhgdhgfh hgfdhghdgh hfghgdh fghgf fdghgd gfdhd
\begin{table}
\caption[]{Caption}
\label{pyttab}
\small
\centering
\begin{tabular*}{\textwidth}{lccc}
Parameter       & AAAA &  BBBBBBBBBBBBBB &  C\\
Parameter       & A &  B &  C\\
\noalign{\smallskip}\hline\noalign{\smallskip}
\end{tabular*}
\end{table}
\end{document}

Antwort1

So was?

Bildbeschreibung hier eingeben

(vertikale Linien werden eingeführt, um die Spaltenbreite einfacher erkennen zu können. In einer echten Tabelle können Sie sie entfernen)

  • Es ist nicht klar, was Sie mit „automatisch“ meinen.
  • Aus den gezeigten MWE lässt sich schließen, dass Sie Tabellen mit vorgegebener Breite (= ) haben möchten \textwidth.
  • Für Spalten Xmüssen Sie eine Tabelle verwenden tabularx. Darin können Sie XSpalten (mindestens eine) und für tabularTabellen definierte Spalten verwenden.
  • Eine attraktive Möglichkeit ist die Nutzung des tabularrayPakets.
  • Nachfolgend finden Sie Anwendungsbeispiele tabularxund tblr(im Paket definierte tabularray) Tabellen:
\documentclass{article}
\usepackage{lipsum}
\usepackage{tabularx}
    \newcolumntype{C}{>{\centering\arraybackslash}X}
    \newcolumntype{L}{>{\raggedright\arraybackslash}X}
    \newcolumntype{R}{>{\raggedleft\arraybackslash}X}

\usepackage{tabularray}
\UseTblrLibrary{booktabs}

\begin{document}
\lipsum[1][1-2]
    \begin{table}[ht]
\caption[short caption]{Caption}
\label{pyttab}
\begin{tabularx}{\textwidth}{|L|C|c|R|}
    \hline % ?
Parameter       & AAAA &  BBBBBBBBBBBBBB &  C\\
Parameter       & A &  B &  C\\
    \hline
\end{tabularx}
    \end{table}
    
\lipsum[1][3-5]
    \begin{table}[ht]
\caption[short caption]{Caption}
\label{tab:tblr}
\begin{tblr}{colspec={X[l] X[c] c X[r]}, vlines}
    \toprule % ?
Parameter       & AAAA &  BBBBBBBBBBBBBB &  C\\
Parameter       & A &  B &  C\\
    \bottomrule
\end{tblr}
\end{table}

\end{document}

Bildbeschreibung hier eingeben

Antwort2

Die Umgebung {NiceTabular}von nicematrixstellt Xoptionale Argumente für die horizontale Ausrichtung der Spaltenbreite bereit: X[l], X[c], usw.

\documentclass{article}
\usepackage{geometry}
\usepackage{lipsum}
\usepackage{nicematrix}

\begin{document}

\lipsum[1]

\begin{table}
\caption{Caption}
\label{pyttab}
\small
\centering
\begin{NiceTabular}{X[l]X[c]X[c]X[c]}[hvlines]
Parameter       & AAAA &  BBBBBBBBB BBBBB BBB BBB &  C\\
Parameter       & A &  B &  C\\
\end{NiceTabular}
\end{table}

\end{document}

Ausgabe des obigen Codes

verwandte Informationen