如何使粗体数学与`NiceMatrix`中的`code-for-first-row`一起工作?

如何使粗体数学与`NiceMatrix`中的`code-for-first-row`一起工作?

我想让第一行变为粗体,如下所示

在此处输入图片描述

答案在\bfseries 用于数学模式(整个表格行以粗体显示)建议\rowstyle{\boldmath\textbf}哪个tabular似乎工作得很好。但是,除非将这些命令放在表中的每个条目之前,否则\RowStylecode-for-first-rowfromNiceMatrix似乎不能很好地工作\boldmath\textbf。此外,这种解决方案不适用于\text我们用于在数学模式下放置文本的哪个。有可能得到一个简洁的解决方案吗?

\documentclass{article}

\usepackage{nicematrix}
        
\begin{document}

\begin{equation}
    \begin{NiceArray}{l l l}[first-row, code-for-first-row=]
        
        \text{\textbf{Item No}} & \boldmath\textbf f(t) & \boldmath\textbf F(s)
        \\
        
        1. & \delta(t) & 1
        \\
        
    \end{NiceArray}
\end{equation}

\end{document}

答案1

{NiceArray}(以及类似的环境,例如{pNiceArray}) 中,与密钥相对应的标记code-for-first-row插入到 之后,从而$在单元格中启动数学模式。但您可以使用第一个符号 退出数学模式$,输入您想要的任何指令(例如\bfseries),然后使用另一个符号 再次启动数学模式$

code-for-first-row = $\bfseries\mathversion{bold}$

尽管表面如此,但符号之间的标记$并不处于数学模式!

\documentclass{article}
\usepackage{nicematrix}
        
\begin{document}

$\begin{pNiceArray}{ccc}[first-row,code-for-first-row=$\bfseries\mathversion{bold}$]
\text{Text} & a+b & c+d \\ 
1 & a+b & c+d \\ 
2 & a+b & c+d \\ 
\end{pNiceArray}$

\end{document}

上述代码的输出

如果要code-for-first-row使用 进行设置\NiceMatrixOptions,则应测试数学模式,以确保代码在所有环境中都有效nicematrix

\NiceMatrixOptions
  {
    code-for-first-row = 
     \ifmmode $\bfseries\mathversion{bold}$
     \else \bfseries\mathversion{bold}
     \fi
  }

答案2

在较新的版本中nicematrix(≥2021-10-18 的 6.3),您可以使用命令\RowStyle及其键bold

\documentclass{article}
\usepackage{nicematrix}
        
\begin{document}

\NiceMatrixOptions{code-for-first-row= \RowStyle[bold]{}}

$\begin{pNiceArray}{ccc}[first-row]
\text{Text} & a+b & c+d \\ 
1 & a+b & c+d \\ 
2 & a+b & c+d \\ 
\end{pNiceArray}$

\end{document}

与往常一样nicematrix,您需要进行多次编译。

上述代码的输出

相关内容