Como alinhar horizontalmente o texto girado em uma tabela?

Como alinhar horizontalmente o texto girado em uma tabela?

Estou tentando alinhar horizontalmente o texto que foi girado em uma tabela. Quero que o texto "Lorem Ipsum" girado e "Lorem Ipsum & Lorem Ipsum" girado sejam centralizados horizontalmente na célula. Quando ajusto a largura de cada coluna manualmente, o alinhamento não fica mais centralizado. Preciso modificar a largura de cada coluna para que minha tabela caiba na largura de uma única coluna.

Eu tentei usar o \multirowcomando deComo posso alinhar o texto girado em uma tabela na parte inferior?mas só consegui modificar o alinhamento vertical.

Aqui está a aparência da minha mesa:

Mesa

Aqui está o código (desculpas se incluí alguns pacotes desnecessários):

\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}

Responder1

SOLUÇÃO REVISADA

Um dos problemas com o seu MWE e meu ajuste anterior foi que ele não levou em conta o espaço natural alocado, por padrão, entre colunas, definido pelo comprimento \tabcolsep. Se desejar estreito, a primeira coisa a fazer é desativá-lo, com \setlength\tabcolsep{0pt}. Então, não há \vspacenecessidade de ajustes e o problema passa a ser determinar a largura da coluna que atenda às suas necessidades.

Aqui, me esforcei para deixar as colunas o mais estreitas possível, novamente, sem ajustes. Observe que salvei uma cópia em \tabcolsepinto \svtabcolsep, se precisar restabelecê-la mais tarde.

\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}

insira a descrição da imagem aqui

Observe que você pode até dispensar os tipos de coluna Ge U, tornando-os c, e usando um valor pequeno e finito de \tabcolseppara atingir seu objetivo.

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

Responder2

Sua caixa foidistantemais largo que a largura especificada da coluna, portanto a centralização não funcionaria. Além disso, não coloque a mesa dentro de um ambiente central, ela irá flutuar, deixando um espaço vertical espúrio da tela central sem nada dentro.

insira a descrição da imagem aqui

\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}

Responder3

Se você realmente quiser embalá-los bem...

mesa

\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}

informação relacionada