エラーなしで動作する次のコードがあります:
\documentclass{beamer}
\usetheme{Boadilla}
\usepackage[frenchb]{babel}
\begin{document}
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{a & b & c & d}
\onslide<2->{
\\ \hline
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& Line 2 right
}
\\ \hline
\end{tabular}
\end{frame}
\end{document}
Line 2 right
しかし、に変更したら\multicolumn{2}{l}{Line 2 right}
、コンパイルされなくなりました。 次に を削除したらonslide<2->
、再度コンパイルされましたが、オーバーレイ効果はありませんでした。 3 番目はmulticoulmn
ではうまく動作しないようですonslide
が、解決方法をご存知の方はいませんか?
...
\onslide<2->{
\\ \hline
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
\onslide<3->{
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
...
答え1
内の行の末尾に\\
(および)を追加します。\hline
\onslide
\documentclass{beamer}
\usetheme{Boadilla}
\usepackage[frenchb]{babel}
\begin{document}
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{a & b & c & d}
\onslide<2->{
\\ \hline
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
\end{tabular}
\end{frame}
\end{document}
ただし、セクション23.5 行単位でテーブルを展開するマニュアルのbeamer
抜粋
表を 1 行ずつ表示したい場合、表に縦線と横線があると、さまざまな問題が発生します。その理由は、左端の最初の縦線は、その行が読み取られる前 (つまり、特に
\onslide
コマンドが読み取られる前) に描画されるためです。ただし、行の末尾に\pause
または を 配置し\uncover
ても役に立ちません。これは、最後に表示した行の下の水平線が抑制されるためです。
(次に、テーブルを明らかにするための可能な方法を示す例を示します。)
元の質問に対する新しい編集:
\documentclass{beamer}
\usetheme{Boadilla}
\usepackage[frenchb]{babel}
\begin{document}
\begin{frame}
\begin{tabular}{ll|ll}
\onslide<1->{a & b & c & d}
\onslide<2->{
\\ \hline
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
\onslide<3->{\\[-\normalbaselineskip]
\multicolumn{2}{l|}{Line 1}
\\
\multicolumn{2}{l|}{Line 2 left}
& \multicolumn{2}{l}{Line 2 right} \\\hline
}
\end{tabular}
\end{frame}
\end{document}
2 行目の終わりは 内にあるため\onslide<2>
、\onslide<3>
時間どおりには認識されません。例に示すように、行の先頭に負の間隔を持つ新しい行を追加します。