我想使用自己的颜色定义突出显示表格中的文本。表格就是表格dcolumn
。它不起作用,我收到错误消息! Missing } inserted.
并! Extra }, or forgotten $.
重复了三次。
下面是该课程的一个最小示例beamer
(我没有检查其他课程)。
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage{default}
\usepackage{color, colortbl}
\usepackage{booktabs, dcolumn}
# Now I create my own color to highlight text
\definecolor{red4}{rgb}{0.545,0.000,0.000}
\newcommand{\mcdr}[1]{{{\bf \color{red4}#1}}}
\begin{document}
#-----------
\begin{frame}
\begin{table}
\begin{tabular}{p{1cm} D{.}{.}{3.5}@{} }
\toprule
average & {\mcdr{-0.01}} \\
\end{tabular}
\end{table}
\end{frame}
#-----------
\end{document}
但是,嵌入\mcdr
在普通表中,一切正常:
\begin{center}
\begin{tabular}{l | l }
early& {\mcdr{0.1}} \tabularnewline
late& \textit{0.11} \tabularnewline
\end{tabular}
\end{center}
答案1
D 列类型由两个(子)列组成。例如,如果您在数字 -0,01 前放置 \color{red4},您将看到,只有数字 (-1) 的第一部分变为 red4 色。在任何宏中关闭此数字都会隐藏“。”,它是(子)列之间的分隔符。
与此接近的解决方案(据我了解)可以是:
\documentclass{beamer}
%\usepackage[utf8]{inputenc}
%\usepackage{default}
\usepackage{color, colortbl}
\usepackage{booktabs, dcolumn}
% Now I create my own color to highlight text
\definecolor{red4}{rgb}{0.545,0.000,0.000}
\newcommand{\mcdr}[1]{{{\bf \color{red4}#1}}}
\newcolumntype{F}[3]{>{\color{red4}\DC@{#1}{#2}{#3}}c<{\DC@end}}
\newcolumntype{d}[1]{F{.}{.}{#1}}
\begin{document}
%-----------
\begin{frame}
\begin{table}
\begin{tabular}{p{1cm} D{.}{.}{3.5}@{} }
\toprule
average & \mcdr{-0}.\mcdr{01} \\
\bottomrule
\end{tabular}
\end{table}
\end{frame}
%-----------
\end{document}
答案2
我建议(至少对于此应用程序)不要加载dcolumn
包及其列类型,而是加载包并使用其列类型。另外,我认为您应该使用颜色或粗体,但不能同时使用两者;我会选择使用颜色来突出显示文档中的项目。D
siunitx
S
beamer
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage{xcolor, booktabs, siunitx}
% Now I create my own color to highlight text
\definecolor{red4}{rgb}{0.545,0.000,0.000}
\newcommand{\mcdr}{\color{red4}}
\begin{document}
\begin{frame}
\begin{table}
\begin{tabular}{p{1.5cm}
S[table-format=3.5, group-digits=false]
@{} }
\toprule
average & \mcdr -0.01 \\
difference & \mcdr -12.34567 \\
\end{tabular}
\end{table}
\end{frame}
\end{document}