我正在使用该array
环境并有如下内容:
\begin{array}{|c|c|}
\hline
\textbf{x} & \textbf{y} \\
\hline
\hline
t_1 & lon_1 \\
\hline
\end{array}
我想让两列的宽度相同。我该怎么做?
答案1
如果您不想使用p{<width>}
必须将宽度固定为特定量的列类型,则可以使用SetToWidest
下面定义的宏排版一行。这要求您确定最宽的条目是什么,并将其定义为 的值WidestEntry
:
\documentclass{article}
\usepackage{calc}
\newcommand{\WidestEntry}{$lon_1$}%
\newcommand{\SetToWidest}[1]{\makebox[\widthof{\WidestEntry}]{#1}}%
\begin{document}
\begin{tabular}{|c|c|}
\hline
\textbf{x} & \textbf{y} \\
\hline
\hline
\SetToWidest{$t_1$} & $lon_1$ \\
\hline
\end{tabular}
或类似地使用array
:
\documentclass{article}
\usepackage{calc}
\newcommand{\WidestEntry}{$lon_1$}%
\newcommand{\SetToWidest}[1]{\makebox[\widthof{\WidestEntry}]{$#1$}}%
\begin{document}$
\begin{array}{|c|c|}
\hline
\textbf{x} & \textbf{y} \\
\hline
\hline
\SetToWidest{t_1} & lon_1 \\
\hline
\end{array}$
\end{document}
如果您可以指定每列的宽度,则可以使用p{<width>}
列类型:
\documentclass{article}
\usepackage{array}
\begin{document}$
\begin{array}{|>{\centering\arraybackslash$} p{1.0cm} <{$} | >{\centering\arraybackslash$} p{1.0cm} <{$} |}
\hline
\textbf{x} & \textbf{y} \\
\hline
\hline
t_1 & lon_1 \\
\hline
\end{array}$
\end{document}