如何在 tabu 中设置特定列宽?以下是我目前所拥有的
{\tabulinesep=1.2mm
\begin{tabu}{|X|X|X|X|}
\hline
\textbf{Question} & \textbf{Solution} & \textbf{Partial Marks} & \textbf{Guidance} \\
\hline
%%%%%%%%%%%%%%% Q1 Equation of a Line
1a & $\frac{1}{2}$ & A1 & cao \\
\hline
1b & $y-\frac{1}{3}x+4=0$ & A2 & cao \\
\hline
%%%%%%%%%%%%%%% Q2 Indices
2 & $\frac{3^{2x}}{3^{2y}}=3^{2x+4}$ & M1 & Converts $9^x$ to $3^{kx}$ where $k$ is an integer \\
\hline
这给了我这个
我想将左侧列和第三列的尺寸调整得比现在小一些,同时最好保留其他两列。如有任何建议,我将不胜感激,谢谢。
答案1
正如@HenriMenke 在评论中指出的那样,不要使用该tabu
软件包:它有缺陷并且无人维护。相反,我建议您使用该tabularx
软件包及其同名环境。我还建议您让表格材料看起来更加开放,主要是通过省略所有垂直线并使用更少但间距适当的水平线。
以下解决方案假设总宽度表格材料应为\textwidth
。由于前三列中似乎没有用处或不允许使用换行符,因此它们使用l
列类型。只有最后一列使用X
列类型。
关于表格设计的最后评论:使用粗体因为标题单元格中的材料使表格看起来相当“沉重”——但实际上并没有提高其可理解性和可读性。如果我的表格中,我不会将标题行中的单词加粗。
\documentclass{article}
\usepackage{tabularx} % for 'tabularx' environment
\usepackage{booktabs} % for \toprule, \midrule, \bottomrule, and \addlinespace macros
\begin{document}
\noindent
\begin{tabularx}{\textwidth}{@{} lll X @{}}
\toprule
\textbf{Question} & \textbf{Solution} &
\textbf{Partial Marks} & \textbf{Guidance} \\
\midrule
%%%%%%%%%%%%%%% Q1 Equation of a Line
1a & $\frac{1}{2}$ & A1 & cao \\
\addlinespace
1b & $y-\frac{1}{3}x+4=0$ & A2 & cao \\
\addlinespace
%%%%%%%%%%%%%%% Q2 Indices
2 & $\frac{3^{2x}}{3^{2y}}=3^{2x+4}$ & M1 &
Converts $9^x$ to $3^{kx}$ where $k$ is an integer \\
\bottomrule
\end{tabularx}
\end{document}
答案2
新的 LaTeX3 软件包tabularray
是过时软件包的替代品tabu
。并Q[2cm]
设置列宽。
\documentclass[a4paper,12pt]{report}
\usepackage{tabularray}
\begin{document}
\noindent
\begin{tblr}{colspec={Q[2cm]XQ[2cm]X},row{1}={font=\bfseries},hlines}
Question & Solution & Partial Marks & Guidance \\
1a & $\frac{1}{2}$ & A1 & cao \\
1b & $y-\frac{1}{3}x+4=0$ & A2 & cao \\
2 & $\frac{3^{2x}}{3^{2y}}=3^{2x+4}$ & M1 & Converts $9^x$ to $3^{kx}$ where $k$ is an integer \\
\end{tblr}
\end{document}
答案3
@LJR 答案的一个小变体(用于练习):
\documentclass[a4paper,12pt]{report}
\usepackage{amsmath}
\usepackage{array,tabularray}
\NewColumnType{C}{>{$\displaystyle}X<{$}}
\begin{document}
\noindent
\begin{tblr}{colspec={Q[2cm] C Q[2cm,c,m] X[m]},
row{1}={font=\bfseries},
rowsep=3pt,
hlines}
Question & \text{Solution} & Partial Marks & Guidance \\
1a & \frac{1}{2} & A1 & cao \\
1b & y-\frac{1}{3}x+4=0 & A2 & cao \\
2 & \frac{3^{2x}}{3^{2y}}=3^{2x+4} & M1 & Converts $9^x$ to $3^{kx}$ where $k$ is an integer \\
\end{tblr}
\end{document}