![如何使用 \rowstyle 将整行文本和数学条目加粗?](https://linux22.com/image/395150/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20%5Crowstyle%20%E5%B0%86%E6%95%B4%E8%A1%8C%E6%96%87%E6%9C%AC%E5%92%8C%E6%95%B0%E5%AD%A6%E6%9D%A1%E7%9B%AE%E5%8A%A0%E7%B2%97%EF%BC%9F.png)
尝试跟随这个答案,\rowstyle{\boldmath\bfseries}
无法按预期使以下代码中的整个第一行变为粗体:
\documentclass[a4paper]{article}
\usepackage{booktabs,tabularx,mathtools,siunitx,ragged2e}
\begin{document}
\newcolumntype{b}{>{\RaggedRight\hsize=1.5\hsize$}X<{$}}
\newcommand{\heading}[1]{\multicolumn{1}{c}{#1}}
\newcolumntype{m}{>{\RaggedLeft\hsize=0.5\hsize}X}
\newcommand{\rowstyle}[1]{\gdef\currentrowstyle{#1}#1\ignorespaces}
\noindent
\begin{tabular*}{\linewidth}{
@{\extracolsep{0pt plus 5pt minus 3pt}}
>{$}l<{$}
l
S[table-format=2.2,round-precision=2,round-mode=places, round-integer-to-decimal=true]%
@{}}
\toprule
\rowstyle{\boldmath\bfseries}
& $\delta$ [deg] & \heading{5} \\
\midrule
\Gamma = x^2 & $\beta$ [deg] & 1 \\
\bottomrule
\end{tabular*}
\end{document}
那么,有时我使用 pdflatex 进行编译,有时我使用 lualatex 进行编译,正确的方法是什么?
答案1
tblr
环境可能的解决方案tabularray
包裹:
\documentclass[a4paper]{article}
\usepackage{mathtools}
\usepackage{tabularray}
\UseTblrLibrary{booktabs,siunitx}
\sisetup{table-format=2.2,round-precision=2,round-mode=places,round-integer-to-decimal=true}
\begin{document}
\noindent
\begin{tblr}{
colspec = {@{}>{$\relax}X<{$}XS@{}},
row{1} = {font=\boldmath\bfseries},
}
\toprule
& $\delta$ [deg] & {{{5}}} \\
\midrule
\Gamma = x^2 & $\beta$ [deg] & 1 \\
\bottomrule
\end{tblr}
\end{document}
答案2
与。{NiceTabular}
nicematrix
\documentclass[a4paper]{article}
\usepackage{nicematrix,siunitx,booktabs}
\sisetup{table-format=2.2,round-precision=2,round-mode=places}
\begin{document}
\noindent
\begin{NiceTabular}{@{}>{$}X<{$}XS@{}}
\toprule
\RowStyle[bold]{}
& $\delta$ [deg] & {5} \\
\midrule
\Gamma = x^2 & $\beta$ [deg] & 1 \\
\bottomrule
\end{NiceTabular}
\end{document}
您需要多次编译(因为nicematrix
在后台使用 PGF/Tikz 节点)。