长度的数学运算

长度的数学运算

我有一张包含三列的表格,并且我希望该表格分布在\textwidth页面上。

我试过:

\documentclass{article}
\usepackage{tabularx}
\begin{document}
\begin{tabularx}{\textwidth/3}{| c | c | c |} %Math operation here.
\hline
looooooong & long & very loooong \\
long & very looooooong & long\\
\hline
\end{tabularx}
\end{document}

答案1

\documentclass{article}
\usepackage{tabularx}
\usepackage{lipsum}
\begin{document}
\noindent
\begin{tabularx}{\textwidth}{| X | X | X |} \hline
        \lipsum[5] & \lipsum[5] & \lipsum[5]\\\hline
\end{tabularx}

\noindent
\begin{tabularx}{\textwidth}{
    | >{\hsize=0.5\hsize}X 
    | X 
    | >{\hsize=1.5\hsize}X |} \hline
    \lipsum[5] & \lipsum[5] & \lipsum[5]\\\hline
\end{tabularx}

\end{document}

在此处输入图片描述

在此处输入图片描述

如果您需要分页符,则使用xltabular

答案2

以下两种方法提供相同的输出;第一种方法使用计算来\textwidth均匀分布列,而第二种方法使用tabularxX列来计算长度:

在此处输入图片描述

\documentclass{article}

\usepackage{tabularx}

\begin{document}

\setlength{\parindent}{0pt}% Just for this example

\begin{tabular}
  { | *{3}{p{\dimexpr(\textwidth - \arrayrulewidth)/3 - 2\tabcolsep - \arrayrulewidth} |} }
  \hline
  looooooong & long & very loooong \\
  long & very looooooong & long \\
  \hline
\end{tabular}

\begin{tabularx}{\textwidth}{ | *{3}{X |} }
  \hline
  looooooong & long & very loooong \\
  long & very looooooong & long \\
  \hline
\end{tabularx}

\end{document}

X-columns 默认为p{<len>}after<len>。如果你想改变这一点,你可以使用

\renewcommand{\tabularxcolumn}[1]{ m{#1} }

垂直居中列条目,例如(m{<len>}由提供array,由tabularx

相关内容