介绍

在 LaTeX 里,tabularx 是一个很实用的包,它能够创建宽度固定的表格,而且可以自动对列宽进行调整。

语法规则

\usepackage{tabularx}
\begin{tabularx}{总宽度}{列格式}
    % 表格内容
\end{tabularx}

这里的 总宽度 一般设为 \textwidth,也就是页面的宽度。列格式 除了能使用 l(左对齐)、c(居中对齐)、r(右对齐)这些常规格式外,还能使用 X 列。X 列会按照比例自动占据剩余宽度。

示例

\begin{tabularx}{\textwidth}{|X|c|r|}
    \hline
    这是一个会自动换行的长文本  这是一个会自动换行的长文本  这是一个会自动换行的长文本 & 居中 & 右对齐 \\
    \hline
    自动填充剩余宽度 & 数据 & 123 \\
    \hline
\end{tabularx}

在这个例子中,第一列是 X 列,它会自动填充剩余宽度,并且文本能够自动换行;第二列是居中对齐;第三列则是右对齐。

在这里插入图片描述

自定义 X 列的对齐方式

如果想让 X 列以不同方式对齐,可借助 array 包自定义列类型:

\usepackage{array}
\newcolumntype{L}{>{\raggedright\arraybackslash}X} % 左对齐
\newcolumntype{C}{>{\centering\arraybackslash}X} % 居中对齐
\newcolumntype{R}{>{\raggedleft\arraybackslash}X} % 右对齐

\begin{tabularx}{\textwidth}{|L|C|R|}
    \hline
    左对齐文齐文齐文齐文齐文齐文本 & 齐文齐文齐文齐文齐文齐文齐文居中对齐文本 & 齐文齐文齐文齐文齐文齐文齐文右对齐文本 \\
    \hline
\end{tabularx}

在这里插入图片描述

多行与多列

在 tabularx 中可以使用 \multicolumn 来跨列:

\begin{tabularx}{\textwidth}{|X|X|}
    \hline
    \multicolumn{2}{|c|}{合并两列} \\
    \hline
    第一列 & 第二列 \\
    \hline
\end{tabularx}

在这里插入图片描述

处理长表格

若表格内容较多,需要跨页显示,可搭配使用 longtableltablex 包:

\usepackage{ltablex}
\begin{tabularx}{\textwidth}{|X|c|}
    \hline
    标题1 & 标题2 \\
    \hline
    \endfirsthead
    \hline
    标题1 & 标题2 \\
    \hline
    \endhead
    % 表格内容
    数据 & 1 \\
    数据 & 2 \\
    % 更多行...
    \hline
\end{tabularx}

在这里插入图片描述

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐