我的问题类似于siunitx:在表格中按小数点对齐数字不适用于粗体或斜体数字,但我想将格式应用于某一行或特定单元格,而不是整个列。我无法应用建议的答案来siunitx
解释粗体或颜色宏。
该软件包文档的第 9.4 节siunitx
提到
建议使用 e-TeX 保护机制来防止表格单元格中宏的扩展
但我仍然不知道如何正确地做到这一点。我尝试应用建议的内容这里没有成功:
\documentclass{article}
\usepackage{booktabs}
\usepackage{etoolbox}
\robustify\bfseries
\usepackage{siunitx,xcolor}
\sisetup{detect-weight=true, detect-inline-weight=text, locale = FR}
\begin{document}
\begin{tabular}{l S S}
\toprule
\textbf{Foo} & \textbf{Col1} & \textbf{Col2} \\
\midrule
foo1 & 11.1 & 11.1\\
foo2 & 222.2 & 222.2\\
\textbf{foo3} & \textbf{3.333} & \textbf{3.333}\\
foo4 & 4 & 4\\
foo5 & 555.55 & \textcolor{gray}{555.55}\\
foo6 & 6.00 & 6.00\\
\bottomrule
\end{tabular}
\end{document}
感谢您的帮助。
答案1
感谢@Joseph Wright 的评论,我使用\bfseries
而不是\textbf
,而\color
不是\textcolor
(根本没有括号):
\documentclass{article}
\usepackage{booktabs}
\usepackage{siunitx,xcolor}
\sisetup{detect-weight=true, detect-inline-weight=text, locale = FR}
\begin{document}
\begin{tabular}{l S S}
\toprule
\textbf{Foo} & \textbf{Col1} & \textbf{Col2} \\
\midrule
foo1 & 11.1 & 11.1\\
foo2 & 222.2 & 222.2\\
\textbf{foo3} & \bfseries 3.333 & \bfseries 3.333\\
foo4 & 4 & 4\\
foo5 & 555.55 & \color{gray} 555.55\\
foo6 & 6.00 & 6.00\\
\bottomrule
\end{tabular}
\end{document}