使用橡皮栏换行表格中的文字

使用橡皮栏换行表格中的文字

我可以使用p{}m{}或者r{}但我必须传递固定大小。有没有办法用橡胶柱来做到这一点?

答案1

另一种方法tabularx有时效果更好(有时则不然),那就是使用tabulary

在此处输入图片描述

\documentclass{article}
\usepackage{tabularx,tabulary}
\def\a{ one two three four five six seven eight nine}
\def\b{\a. \a. }
\begin{document}

\noindent X\dotfill X

\noindent\begin{tabularx}
                {\textwidth} % table width
                {| l | X | X|} % X is for rubber column
     abc&1 1 1 \b\b&2\b\\
     def ge&22\b \b\b&red green blue
  \end{tabularx}

\noindent X\dotfill X

\bigskip

\noindent X\dotfill X


\noindent\begin{tabulary}
                {\textwidth} % table width
                {| l | L | L|} % X is for rubber column
     abc&1 1 1 \b\b&2\b\\
     def ge&22\b \b\b&red green blue
  \end{tabulary}

\noindent X\dotfill X

\end{document}

TX 和 TY 以不同的方式在列之间分配宽度。TY 会考虑单元格的内容,并尝试使内容较多的列比内容较少的列更宽。TX 不会考虑 X 列的内容。

答案2

答案是使用tabularx包。

% preamble
\usepackage{tabularx}

\begin{document}
    \begin{table}
    \begin{center}
        \begin{tabularx}
                {\textwidth} % table width
                {| l | X |} % X is for rubber column

            % your rows
            \end{tabularx}
\end{document}

相关内容