
列の幅を自動的に設定し、配置を維持する方法を教えてください。X列を使用してlc配置を設定することは可能ですか?ありがとうございます
\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}
答え1
このような?
(縦線は列の幅をわかりやすくするために導入されています。実際の表では削除できます)
- 「自動」が何を意味するのか明確ではありません。
\textwidth
示された MWE から、規定の幅 (= )を持つテーブルが望ましいと結論付けることができます。- 列にはテーブル
X
を使用する必要があります。その中で、列 (少なくとも 1 つ) とテーブルに定義された列tabularx
を使用できます。X
tabular
- 魅力的な選択肢は
tabularray
パッケージの使用です。 - 以下に使用例
tabularx
とtblr
(tabularray
パッケージで定義された)テーブルを示します。
\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}
答え2
{NiceTabular}
の環境では、水平方向の配置に列幅のオプション引数(、など)nicematrix
が提供されます。X
X[l]
X[c]
\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}