1.为表格设置底色
\usepackage[table]{xcolor} % for color 导包
\rowcolor{gray!10} 给列别某一行添加底色
在{tabularx}环境中使用
双栏表格| 页面同宽度
{table*} {tabularx}环境
\begin{table*}[h] # 双栏表格
\caption{xxx}\label{xxx}
\centering
\renewcommand{\arraystretch}{1.5} % 增加行间距,1.5 是行间距的倍数
\begin{tabularx}{\textwidth}{XXXX} # 页面同宽度
\toprule
\toprule
\rowcolor{gray!10}
\bottomrule
\end{tabularx}
\end{table*}
双栏表格| 页面同宽度
{table*} {tabular*}环境
\begin{table*}[h]
\caption{XXX}\label{xxxx}
\begin{tabular*}{\linewidth}{L|CCCCCC} # 页面同宽度 | 几列
\end{tabular*}
\end{table*}
2 hline 和 toprule区别
\hline 是 LaTeX 标准表格环境(如 tabular)中的命令。
绘制一条简单的水平线,贯穿整个表格的宽度。
线的粗细和样式是固定的,无法直接调整。
通常与 | 列分隔符一起使用,但可能会导致线与底色不连续。
\toprule 是 booktabs 宏包中的命令,专为创建专业排版的表格设计。
特点绘制一条较粗的水平线,通常用于表格的顶部。
\midrule(中等粗细的线,用于表头与数据之间的分隔)
\bottomrule(较粗的线,用于表格底部)配合使用。
默认情况下,\toprule 不会与列分隔符(如 |)兼容,因为 booktabs 推荐使用无竖线的表格样式。
线的粗细和间距可以通过\usepackage{booktabs}宏包的参数调整。
3 tabular 和 tabularx的区别
tabular*是 LaTeX 标准表格环境的扩展,允许指定表格的总宽度。
需要手动调整列宽,通过@{} 或 \extracolsep 来控制列间距。
表格的总宽度是固定的,但列宽需要用户自己计算和分配。
适合需要精确控制表格宽度的场景。
\begin{tabular*}{宽度}{列格式} | {\linewidth} {\textwidth}
\end{tabular*}
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}lcr}
A & B & C \\
1 & 2 & 3 \\
\end{tabular*}
# @{\extracolsep{\fill}} 用于填充列间距,使表格宽度扩展到 \textwidth
tabularx 是一个扩展的表格环境,来自\usepackage{tabularx}宏包,
可以自动调整列宽以适应指定的表格宽度。
引入了一个新的列类型 X,该列会自动拉伸以填充表格的剩余宽度。
更适合需要【自动调整】列宽的表格,无需手动计算列宽。
使用简单,适合大多数场景。
\begin{tabularx}{宽度}{列格式}
...
\end{tabularx}
\begin{tabularx}{\textwidth}{|X|X|X|}
A & B & C \\
1 & 2 & 3 \\
\end{tabularx}
如果你需要精确控制表格的列宽和间距,可以使用 tabular*。
如果你希望自动调整列宽以适应表格宽度,推荐使用 tabularx,尤其是当表格内容较多或列宽不确定时。
4 linewidth 和 textwidth的区别
\textwidth表示当前页面的正文区域的宽度,它是一个全局参数,表示整个页面的正文宽度。
在单栏文档中,\textwidth 等于页面的正文宽度。
在双栏文档中,\textwidth 等于单个栏的宽度。
通常用于设置全局元素的宽度(如图片、表格等)
\includegraphics[width=\textwidth]{example-image}
\linewidth表示当前环境的行宽,它是一个局部参数,会随着环境的变化而变化。
在大多数情况下,\linewidth 等于 \textwidth。
但在某些环境中(如minipage、list 或 quote),\linewidth 会自动调整为当前环境的宽度。
通常用于设置局部元素的宽度(如嵌套环境中的图片或表格)。
\begin{minipage}{0.5\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{minipage}
# 在 minipage 环境中,\linewidth 会自动调整为 minipage 的宽度(即0.5\textwidth)
\textwidth用于全局宽度设置,表示整个页面的正文宽度。
\linewidth用于局部宽度设置,表示当前环境的行宽,会随环境变化。
持续更新...