如何改变表格行高并使其内容居中?

如何改变表格行高并使其内容居中?

如何减少(或增加)表格中特定行的行高并使其内容水平和垂直居中?

A相关答案讨论了如何减小行高,但如何才能使文本居中于表格单元格中?我将其用作dcolumn列类型,因此不能使用任何其他可居中的列类型。

\usepackage{dcolumn}
\newcolumntype{L}{D{.}{.}{1.1}}

\renewcommand{\arraystretch}{2}
\begin{table}
\centering
\begin{tabular}{|c|c|L|}
\hline
a & b & 1.1\\ [-5pt]
\hline
d & e & 2.2 \\ [1pt]
\hline
g & h & 3.3 \\ [6pt]
\hline
\end{tabular}
\end{table}

我想要类似这样的输出:

在此处输入图片描述

答案1

一个非常基本的方法:

\documentclass{article}
\usepackage{dcolumn}
\newcolumntype{L}{@{\hspace{1.5em}}D{.}{.}{1.1}@{\hspace{1.5em}}}
\newcolumntype{V}{>{\centering\arraybackslash}m{3em}}
\newcolumntype{N}{@{}m{0pt}@{}}

\begin{document}

%\renewcommand{\arraystretch}{2}
\begin{table}
\centering
\begin{tabular}{|V|V|L|N}
\hline
a & b & 1.1 &\\
\hline
d & e & 2.2 &\\[15pt]
\hline
g & h & 3.3 &\\[35pt]
\hline
\end{tabular}
\end{table}

\end{document} 

结果:

在此处输入图片描述

笔记:

  1. 我重新定义了您的列类型,L并在左侧和右侧添加了一些空间。
  2. 我已经为剩余的列定义了标准array列类型(因为加载所以这是可能的)。Vdcolumnarray
  3. 我定义了一种不可见的列类型N以避免此处描述的问题:表格中的垂直对齐:m 列,行大小 - 最后一列存在问题
  4. 我已注释掉\renewcommand{\arraystretch}{2}

相关内容