如何垂直对齐文本

如何垂直对齐文本

我正在尝试将表格中的文本垂直居中,但当我尝试使用时\vspace,整个行都会移动,而不仅仅是一个单元格。我复制了下面的 LaTeX,它将演示使用和不使用时的效果\vspace。我还使用了旋转命令,这可能是这如此困难的原因。

这是不使用 vspace 的样子,我希望 Lorem1 和 Ipsum1 垂直居中。 正常图片

我尝试使用它\vspace来执行此任务,但它没有实现我想要的效果。我在下面的示例中使用了负值。

图片使用vspace

\documentclass{article}
\usepackage{array}
\usepackage{tabularx}
\usepackage{rotating}
\usepackage{lipsum}
\begin{document}




\newcolumntype{E}{>{\centering\arraybackslash}m{7cm}}
\newcommand\RotText[1]{\fontsize{9}{9}\selectfont \rotatebox{90}{\parbox{2.6cm}{\centering#1}}}

\centering


\begin{tabular}{|c|E|c|}
\hline
&  & {Lorem Ipsum} \\ 
\hline
Lorem1 & Ipsum1 & \RotText{Lorem3 Ipsum3} \\
\hline
\end{tabular}

\lipsum

\begin{tabular}{|c|E|c|}
\hline
&  & {Lorem Ipsum} \\ 
\hline
\vspace{-10pt}{Lorem1} & Ipsum1 & \RotText{Lorem3 Ipsum3} \\
\hline
\end{tabular}

\end{document}

答案1

添加[origin=c]\rotatebox

\documentclass{article}
\usepackage{array}
\usepackage{tabularx}
\usepackage{rotating}
\usepackage{lipsum}

\newcolumntype{E}{>{\centering\arraybackslash}m{7cm}}
\newcommand\RotText[1]{%
  \rotatebox[origin=c]{90}{\parbox{2.6cm}{\fontsize{9}{9}\selectfont\centering#1}}}

\begin{document}

{
\centering
\begin{tabular}{|c|E|c|}
\hline
&  & {Lorem Ipsum} \\ 
\hline
Lorem1 & Ipsum1 & \RotText{Lorem3 Ipsum3} \\
\hline
\end{tabular}
}

\end{document}

还要注意,我将字体大小更改命令移到了参数内部,以\parbox确保其效果保持在本地。

在此处输入图片描述

在评论中有人要求稍微改变表格的形状:

\documentclass{article}
\usepackage{array}
\usepackage{tabularx}
\usepackage{rotating}
\usepackage{lipsum}

\newcolumntype{E}{>{\centering\arraybackslash}m{7cm}}
\newcommand\RotText[1]{%
  \rotatebox[origin=c]{90}{\parbox{2.6cm}{\fontsize{9}{9}\selectfont\centering#1}}}

\begin{document}

{
\centering
\begin{tabular}{|c|E|c|}
\cline{3-3}
\multicolumn{1}{c}{} &  & {Lorem Ipsum} \\ 
\hline
Lorem1 & Ipsum1 & \RotText{Lorem3 Ipsum3} \\
\hline
\end{tabular}
}

\end{document}

在此处输入图片描述

相关内容