增加字体大小导致表格最后一列的着色不完整

增加字体大小导致表格最后一列的着色不完整

我的表格使用 左对齐\hskip-1.50cm。当我将字体大小从 增加到10pt12pt,表格的布局会向右移动,这是可以理解的。交替的行颜色没有完全填满最后一列。有没有简单的方法可以解决这个问题?

\documentclass[a4paper,10pt]{article}
\newcommand*{\thead}[1]{\multicolumn{1}{c}{\bfseries #1}}
\usepackage[table]{xcolor}

\begin{document}

\rowcolors{2}{gray!10}{orange!5}
\hskip-1.50cm
\begin{tabular}{| c | c | c | p{2cm} | }

\thead{Degree} & \thead{Institution} & \thead{Year of Graduation} & \thead{Distinction} \\ \hline
Degree1 &  Longer University1 &  year1 & Long Distinction1 \\ \hline

Degree2 (sub1) &  LongName University2 &  year2 & Distinction2 \\ \hline

Degree3 (sub3, sub4) &  LongerName University3 &  year3 & Distinction3 \\ \hline

Degree4 (subject1, subject2) &  LongestName University4 &  year4 & Distinction4 \\ \hline

\end{tabular}
\end{document}

答案1

将字体大小从 10 pt 增加到 12 pt 会增加不可换行的标题单元格的宽度,从而使整个表格比文本块更宽。我建议您使用环境tabularx代替tabular并允许在所有四列中换行。

由于您使用交替颜色来提供行之间的视觉区别,因此您可以省去说明\hline。您还可以删除垂直条。

用于\noindent左对齐表格材料;无需知道的当前值\parindent

在此处输入图片描述

\documentclass[a4paper,12pt]{article}
\usepackage[table]{xcolor}
\usepackage{tabularx,ragged2e}
\newcolumntype{C}{>{\Centering\arraybackslash\hspace{0pt}}X}
\newcolumntype{L}{>{\RaggedRight\arraybackslash\hspace{0pt}}X}
\begin{document}

\rowcolors{2}{gray!10}{orange!5}
\noindent    
\begin{tabularx}{\textwidth}{ LCCC  }
\textbf{Degree} & \textbf{Institution} & \textbf{Year of Graduation} & \textbf{Distinction} \\
Degree1 &  Longer University1 &  year1 & Long Distinction1 \\
Degree2 (sub1) &  LongName University2 &  year2 & Distinction2 \\
Degree3 (sub3, sub4) &  LongerName University3 &  year3 & Distinction3 \\
Degree4 (subject1, subject2) &  LongestName University4 &  year4 & Distinction4 \\ 
\end{tabularx}
\end{document}

相关内容