Как выровнять повернутый текст в таблице по горизонтали?

Как выровнять повернутый текст в таблице по горизонтали?

Я пытаюсь выровнять по горизонтали текст, который был повернут в таблице. Я хочу, чтобы повернутый текст "Lorem Ipsum" и повернутый текст "Lorem Ipsum & Lorem Ipsum" были горизонтально отцентрированы в ячейке. Когда я вручную настраиваю ширину каждого столбца, выравнивание больше не центрируется. Мне нужно изменить ширину каждого столбца, чтобы моя таблица вписывалась в ширину одного столбца.

Я попробовал использовать \multirowкоманду изКак выровнять повернутый текст в таблице по нижнему краю?но мне удалось изменить только вертикальное выравнивание.

Вот как выглядит моя таблица:

Стол

Вот код (извините, если я включил ненужные пакеты):

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

\newcommand\RotText[1]{\fontsize{9}{9}\selectfont \rotatebox[origin=c]{90}{\parbox{2.6cm}{\centering#1}}}
\newcolumntype{G}{>{\centering\arraybackslash}m{.0625cm}}
\newcolumntype{U}{>{\centering\arraybackslash}m{.375cm}}

{\centering
\begin{center}\begin{table}[ht]\caption{Lorem Ipsum Table}
\footnotesize
\centering
\begin{tabular}{|c|G|U|U|U|U|G|G|G|U|}
\hline
 & \multicolumn{9}{c|}{Lorem Ipsum} \\ 
\cline{2-10}

Instruction & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & 
\RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} \\
\hline
Lorem Ipsum     & 
& & X   & & & & & & \\

\hline
\end{tabular}
\end{table}
\end{center}
}

\lipsum

\end{document}

решение1

ПЕРЕСМОТРЕННОЕ РЕШЕНИЕ

Одна из проблем с вашим MWE и моей предыдущей его настройкой заключалась в том, что он не учитывал естественное пространство, выделенное по умолчанию между столбцами, определяемое длиной \tabcolsep. Если требуется узкий, первое, что нужно сделать, это отключить его с помощью \setlength\tabcolsep{0pt}. Тогда никаких настроек не \vspaceтребуется, и проблема заключается в определении ширины столбца, которая удовлетворяет вашим требованиям.

Здесь я стремился сделать столбцы как можно уже, опять же, без каких-либо настроек. Обратите внимание, я сохранил копию в \tabcolsep, \svtabcolsepесли мне понадобится восстановить ее позже.

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

\let\svtabcolsep\tabcolsep
\setlength\tabcolsep{0pt}
\newcommand\RotText[1]{\fontsize{9}{9}\selectfont
  \rotatebox[origin=c]{90}{\parbox{2.6cm}{%
\centering#1}}}
\newcolumntype{G}{>{\centering\arraybackslash}m{.35cm}}
\newcolumntype{U}{>{\centering\arraybackslash}m{.62cm}}

\begin{table}[ht]\caption{Lorem Ipsum Table}
\footnotesize
\centering
\begin{tabular}{|c|G|U|U|U|U|G|G|G|U|}
\hline
 & \multicolumn{9}{c|}{Lorem Ipsum} \\ 
\cline{2-10}

Instruction & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & 
\RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} \\
\hline
Lorem Ipsum     & 
& & X   & & & & & & \\

\hline
\end{tabular}
\end{table}

\lipsum

\end{document}

введите описание изображения здесь

Обратите внимание, что вы можете даже обойтись без типов столбцов Gи U, сделав их вместо этого c, и используя небольшое конечное значение \tabcolsepдля достижения своей цели.

\let\svtabcolsep\tabcolsep
\setlength\tabcolsep{.3pt}
\newcolumntype{G}{c}
\newcolumntype{U}{c}

решение2

Ваша коробка быладалекошире указанной ширины столбца, поэтому центрирование не может работать. Также не помещайте таблицу в центральную среду, она уплывет, оставляя ложное вертикальное пространство от центрального дисплея, в котором ничего нет.

введите описание изображения здесь

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

\newcommand\RotText[1]{\rotatebox[origin=c]{90}{\parbox{2.6cm}{\centering#1}}}
\newcolumntype{G}{>{\centering\arraybackslash}m{.6cm}}
\newcolumntype{U}{>{\centering\arraybackslash}m{.6cm}}

\setlength\extrarowheight{3pt}
\begin{table}[ht]\caption{Lorem Ipsum Table}
\footnotesize
\centering
\begin{tabular}{|c|G|U|U|U|U|G|G|G|U|}
\hline
 & \multicolumn{9}{c|}{Lorem Ipsum} \\ 
\cline{2-10}

Instruction & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & 
\RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} \\
\hline
Lorem Ipsum     & 
& & X   & & & & & & \\

\hline
\end{tabular}
\end{table}


\lipsum

\end{document}

решение3

Если вы действительно хотите упаковать их плотно...

стол

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

\newcommand\RotText[1]{\fontsize{9}{9}\selectfont \rotatebox[origin=c]{90}{\parbox{2.6cm}{\centering#1}}}
\newcolumntype{C}{@{\hspace{2pt}}c@{\hspace{1pt}}}

\begin{table}[ht]\caption{Lorem Ipsum Table}
\footnotesize
\centering
\begin{tabular}{|c|C|C|C|C|C|C|C|C|C|}
\hline
 & \multicolumn{9}{c|}{Lorem Ipsum} \\ 
\cline{2-10}

Instruction & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} & 
\RotText{Lorem Ipsum \& Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum} & \RotText{Lorem Ipsum \& Lorem Ipsum} \\
\hline
Lorem Ipsum     & 
& & X   & & & & & & \\
\hline
\end{tabular}
\end{table}


\lipsum

\end{document}

Связанный контент