
Estou lutando há muito tempo com esse código tentando resolver o problema que aparentemente existe. Basicamente copiei o código desta páginahttp://en.wikibooks.org/wiki/LaTeX/Tablesna seção "Ampliando em ambas as direções simultaneamente", e acabei de modificar um pouco:
\begin{frame}
\begin{center}
\onslide<1->\begin{tabular}{c|c|c|c}
\cline{1-4}
\multicolumn{4}{c}{Matemáticas} \pause\\
\cline{1-4}
\multicolumn{2} {c}{Cantidad}& \multicolumn{2} {c}{Magnitud} \pause \\
\cline{1-4}
\multicolumn{1}{c} {Aritmética} & \multicolumn{1}{c}{Música} & \multicolumn{1}c}{Geometría} & \multicolumn{1}{c}{Astronomía} \pause\\
\cline{1-4}
\multicolumn{4}{c}{Quatrivium}
\end{tabular}
\end{center}
\end{frame}
TeXStudio continua dizendo:
Misplaced \omit \cline{1-4}
Missing \endgroup inserted \cline{1-4}
Missing } inserted \cline{1-4}
Missing \cr inserted \cline{1-4}
Eu gostaria que a mesa ficasse assim
Responder1
Seu problema básico é que sua tabela contém colunas, mas você colocou \pause
depois \multicolumn{4}{...}{...}
. Neste ponto, não há célula. \pause
pode ser colocado no final do último argumento de \multicolumn
:
\multicolumn{4}{...}{...\pause}
Mas então a linha inferior da linha é omitida. O exemplo a seguir contrabandeia \pause
após a linha:
\hline % \cline{1-4}
\noalign{\hbox{\pause}}
Observações:
\hline
é melhor que\cline{1-<max column>}
, porque então o espaço para a linha é levado em consideração. Isso não é possível para\cline
. Caso contrário, vários\cline
em sequência seriam deslocados verticalmente.\noalign
permite colocar o material no modo vertical fora do alinhamento.Eu me envolvi
\pause
porque\hbox
não\pause
parece gostar do modo vertical aqui.
Existem muitas maneiras de chegar ao layout da tabela desejado, por exemplo:
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\usepackage{array}
\begin{document}
\newcommand*{\tabstack}[4]{%
\begingroup
\setlength{\extrarowheight}{0pt}%
\begin{tabular}[t]{@{}c@{}}%
\textcolor{#1}{#2}\tabularnewline
\textcolor{#3}{#4}%
\end{tabular}%
\endgroup
}
\begin{frame}
\begin{center}
\color{blue}
\setlength\extrarowheight{.7ex}
\begin{tabular}{|c|c|c|c|}
\hline
\multicolumn{4}{|c|}{
\tabstack {blue} {\Large Matemáticas}
{black} {(el estudio de lo inmutable)}
}\\
\hline
\noalign{\hbox{\pause}}
\multicolumn{2}{|c|}{
\tabstack {red} {\Large Cantidad}
{black} {(lo discreto)}
} &
\multicolumn{2}{c|}{
\tabstack {red} {\Large Magnitud}
{black} {(lo continuo)}
}\\
\hline
\noalign{\hbox{\pause}}
\tabstack {black} {absoluta}
{red} {\Large Aritmética}
&
\tabstack {black} {relativa}
{green} {\Large Música}
&
\tabstack {black} {en reposo}
{red} {\Large Geometría}
&
\tabstack {black} {enmovimiento}
{red} {\Large Astronomía}
\\
\hline
\noalign{\hbox{\pause}}
\multicolumn{4}{|c|}{
\Large \textcolor{blue}{Quatrivium}
} \\
\hline
\end{tabular}
\end{center}
\end{frame}
\end{document}
Observações:
Para as células com duas linhas, usei um arquivo
tabular
.@{}
remove o espaço que separa as colunas, pois esse espaço já está adicionado pelo tabular externo.As linhas da tabela são coloridas definindo a cor padrão de toda a tabela para a cor das linhas.
O fundo texturizado é omitido porque é muito mais complicado:
A mesa poderia ser colocada em uma caixa e uma imagem poderia ser dimensionada para essas dimensões e colocada atrás da caixa da mesa. Mas isso causa problemas com o
\pause
.Um fundo monocromático deve ser mais fácil, pacotes como
colortbl
permitem a configuração de uma cor de fundo, por exemplo, via\rowcolor
. O pacote também possui comandos para colorir as linhas. No entanto, pode haver problemas com linhas parcialmente substituídas pela cor do "fundo".