消除单元格中的垂直空间

消除单元格中的垂直空间

编辑\回答:我通过创建两个表格获得了想要的外观,一个表格的标题为 p 和 m 列,另一个表格的标题为全部为 p 列,然后将它们一个叠在另一个之上。中间有一些空白,我使用 将其消除了\vspace{-2pt}

原始问题:我正在尝试使用 LaTex 为学校报告创建模板。这是目前为止的代码。我喜欢第一行文本的位置,但我希望所有后续行文本的垂直填充较少。我只是 LaTex 的初学者,如果问题太明显,我深表歉意。

报告格式草案

\documentclass[11pt,a4paper]{article}
\usepackage[left=1.00cm, right=1.00cm, top=1.00cm, bottom=1.00cm]   {geometry}
\usepackage{array}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage{lipsum}

\definecolor{colori}{RGB}{249,193,158}
\definecolor{colorii}{RGB}{158,214,149}
\newcommand\skilllevel[1]{%%
\begin{tikzpicture}
\foreach \Val in {1,2,3,4,5}
{
    \node[draw,fill=white,inner ysep=4pt] 
    at ([yshift=10*\Val]0,\Val pt) {};
}
\foreach \Val in {1,...,#1}
{
    \node[draw,fill=colorii,inner ysep=4pt] 
    at ([yshift=10*\Val]0,\Val pt) {};
}
\end{tikzpicture}%
}
\begin{document}

\begin{tabular}{|c|p{5.1cm}|m{0.2cm}|m{0.2cm}|m{0.2cm}|p{5.2cm}|c|}
    %\hline \rule[-2ex]{0pt}{5.5ex} %
    \hline \textbf{Subject} & \vspace{-19pt}\begin{center}
        \textbf{Knowledge and Skills}
    \end{center} & \rotatebox[origin=rB]{90}{Homework} & \rotatebox[origin=rB]{90}{Attitude} & \rotatebox[origin=rB]{90}{ Participation} & \vspace{-19pt}\begin{center}\textbf{Teacher Comments}\end{center} & \textbf{Grade} \\ 
    \hline \rule[-2ex]{0pt}{5.5ex} \emph{Biology} & \lipsum[66] & \vspace{12pt}\skilllevel{2} & \vspace{12pt}\skilllevel{3} & \vspace{12pt}\skilllevel{4} & \lipsum[75] & \textbf{Exceptional} \\ 
    \hline \rule[-2ex]{0pt}{5.5ex} \emph{Chemistry}  &  \lipsum[66] & \vspace{12pt}\skilllevel{2} & \vspace{12pt}\skilllevel{4} & \vspace{12pt}\skilllevel{5} & \lipsum[75] & \textbf{Very Good} \\ 
    \hline \rule[-2ex]{0pt}{5.5ex} \emph{English} & \lipsum[75] & \vspace{12pt}\skilllevel{2}  & \vspace{12pt}\skilllevel{5}  & \vspace{12pt}\skilllevel{1} & \lipsum[66] & \textbf{Good} \\ 
    \hline 
\end{tabular} 
\end{document}

答案1

在此处输入图片描述

您混合使用了mp列,这通常是一个错误,请使用全部p或全部m

如红线所示,列顶行的基线p与的垂直中心对齐m


在此处输入图片描述

使用m并删除了许多可疑的内容\vspace

\documentclass[11pt,a4paper]{article}
\usepackage[left=1.00cm, right=1.00cm, top=1.00cm, bottom=1.00cm]   {geometry}
\usepackage{array}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage{lipsum}

\definecolor{colori}{RGB}{249,193,158}
\definecolor{colorii}{RGB}{158,214,149}
\newcommand\skilllevel[1]{%%
\begin{tikzpicture}
\foreach \Val in {1,2,3,4,5}
{
    \node[draw,fill=white,inner ysep=4pt] 
    at ([yshift=10*\Val]0,\Val pt) {};
}
\foreach \Val in {1,...,#1}
{
    \node[draw,fill=colorii,inner ysep=4pt] 
    at ([yshift=10*\Val]0,\Val pt) {};
}
\end{tikzpicture}%
}
\begin{document}

\begin{tabular}{|c|m{5.1cm}|l|l|l|m{5.2cm}|c|}
    %\hline \rule[-2ex]{0pt}{5.5ex} %
    \hline \textbf{Subject} & \centering
        \textbf{Knowledge and Skills}
    & \rotatebox[origin=rB]{90}{Homework} & \rotatebox[origin=rB]{90}{Attitude} & \rotatebox[origin=rB]{90}{ Participation} & \centering \textbf{Teacher Comments} & \textbf{Grade} \\ 
    \hline \rule[-2ex]{0pt}{5.5ex} \emph{Biology} & \lipsum[66] & \skilllevel{2} & \skilllevel{3} & \skilllevel{4} & \lipsum[75] & \textbf{Exceptional} \\ 
    \hline \rule[-2ex]{0pt}{5.5ex} \emph{Chemistry}  &  \lipsum[66] & \skilllevel{2} & \skilllevel{4} & \skilllevel{5} & \lipsum[75] & \textbf{Very Good} \\ 
    \hline \rule[-2ex]{0pt}{5.5ex} \emph{English} & \lipsum[75] & \skilllevel{2}  &\skilllevel{5}  & \skilllevel{1} & \lipsum[66] & \textbf{Good} \\ 
    \hline 
\end{tabular} 
\end{document}

相关内容