我想按行突出顯示表中的行,也就是說,我想以紅色突出顯示第 1 行,然後將第 1 行設為黑色,將第 2 行設為紅色,等等。
我怎樣才能在 Beamer 中做到這一點?
答案1
對於簡單的自訂靜態行著色:
\documentclass{beamer}
\usepackage{color, colortbl}
\definecolor{LRed}{rgb}{1,.8,.8}
\definecolor{MRed}{rgb}{1,.6,.6}
\definecolor{HRed}{rgb}{1,.2,.2}
\begin{document}
\begin{frame}
\begin{tabular}{ccc}
\rowcolor{LRed} a & b & c \\
a & b & c \\
\rowcolor{LRed} a & b & c \\
\rowcolor{MRed} a & b & c \\
\rowcolor{HRed} a & b & c \\
\rowcolor{MRed} a & b & c \\
\rowcolor{LRed} a & b & c \\
\rowcolor{MRed} a & b & c \\
\end{tabular}
\end{frame}
\end{document}
對於 cmhughes 連結的奇數/偶數著色或更複雜的疊加,請參閱此 MWE:
\documentclass[xcolor=table]{beamer}
\rowcolors{1}{gray!30}{gray!10}
\makeatletter
\def\rowcolor{\noalign{\ifnum0=`}\fi\bmr@rowcolor}
\newcommand<>{\bmr@rowcolor}{%
\alt#1%
{\global\let\CT@do@color\CT@@do@color\@ifnextchar[\CT@rowa\CT@rowb}%
{\ifnum0=`{\fi}\@gooble@rowcolor}%
}
\newcommand{\@gooble@rowcolor}[2][]{\@gooble@rowcolor@}
\newcommand{\@gooble@rowcolor@}[1][]{\@gooble@rowcolor@@}
\newcommand{\@gooble@rowcolor@@}[1][]{\ignorespaces}
\makeatother
\begin{document}
\begin{frame}{The MWE}%
\only<2>{\rowcolors{1}{blue!30}{blue!10}}
\only<1,3>{\rowcolors{1}{gray!30}{gray!10}}
\begin{center}
\begin{tabular}{cc}
A & B \\
A & B \\
A & B \\
\rowcolor<4>{green} A & B \\
\rowcolor<4,5>{yellow}A & B \\
\rowcolor<4-6>{green}A & B \\
\rowcolor<6>{red} A & B \\
A & B \\
\end{tabular}
\end{center}
\par
\visible<1>{Testing default row colouring ... \\}
\visible<2,3>{Testing change of default colors ...\\}
\visible<4-6>{Testing in-out of custom colors ...\\ (caution: The order of defaults colors can change)\\}
\vfill
\scriptsize{
Based of answer of Martin Scharrer
\url{http://tex.stackexchange.com/questions/18427/why-cant-i-wrap-rowcolor-in-only-beamer}}
\end{frame}
\end{document}
答案2
這是一個更簡單的解決方案。
只需使用 \documentclass 中的選項表載入 xcolor 即可。由於beamer預設載入xcolor包,因此需要傳遞\documentclass中的選項。
\documentclass[xcolor=table]{beamer} %-- pass the option table to xcolor package
\begin{document}
\begin{frame}
\frametitle{Famous Composers}
\begin{center}
\rowcolors{1}{}{lightgray} %-- this indicates the change in odd and pair rows
\begin{tabular}{|l|c|}\hline
J.\ S.\ Bach
& 1685--1750 \\
W.\ A.\ Mozart & 1756--1791 \\
L.\ Beethoven & 1770--1827 \\
F.\ Chopin
& 1810--1849 \\
R.\ Schumann
& 1810--1856 \\
B.\ Bartok & 1881--1945 \\ \hline
\end{tabular}
\end{center}
\end{frame}
\end{document}
結果:
來源: