{NiceTabular} - 单元格自动垂直间距

{NiceTabular} - 单元格自动垂直间距

我目前正在尽力为系统设置用户手册。一切运行良好,只是在尝试设置表格时不断遇到同样的问题。

我想生成一个包含三列的表格,第一列命名函数,第二列描述函数,最后一列命名特征示例等等。由于最后一列可能会显示多个示例,因此我需要更多行。

我曾尝试在tabularx- 环境中使用multicolumnmultirow命令解决这个问题,但并没有成功。

现在我尝试使用NiceTabular-environment,它确实有效。只是有一个小缺陷我真的无法解决:

\documentclass[10pt]{scrreprt}
\usepackage[T1]{fontenc}

\usepackage{nicematrix}
\usepackage{tabularx}

\begin{document}
    \begin{table}
            \begin{NiceTabular}{XXX}[hvlines]
                    Function: & Description & Features:\\
                    \Block[l]{*-1}{Compensation Function:} & \Block[l]{*-1}{Compensates for various grid perturbations and changes $cos\varphi$} & steplessly available\\
                    && customizable and so\\
                \end{NiceTabular}
    \end{table}
\end{document}

如果中间列超出了相邻列的高度(我猜第一列/第三列也会发生同样的情况),文本就无法正确换行,而是超出了单元格的垂直限制。我无法找到解决方案(在 NiceMatrix 手册中),因为我不太确定如何用语言描述这个问题。也许有人可以帮助我。如果信息缺失,请见谅。这是我在这里的第一篇帖子。

提前致谢!

答案1

命令\Block不会nicematrix创建空间(除了创建垂直空间的单行块和创建水平空间的单列块)。您应该尝试tabularray能够解决此类问题的包。

但是,如果您想使用nicematrix,则应该给第二列留出更多空间,例如使用以下代码:

\documentclass[10pt]{scrreprt}
\usepackage{nicematrix}
\usepackage{varwidth}

\begin{document}

\begin{center}
\begin{NiceTabular}{lXV[l]{5cm}}[hvlines]
  Function: & Description & Features:\\
  \Block[l]{*-1}{Compensation\\ Function:} 
   & \Block[l]{*-1}{Compensates for various grid perturbations and changes $\cos\varphi$} 
   & steplessly available\\
  && customizable and so\\
\end{NiceTabular}
\end{center}

If the content of a cell is wider than 5 cm, it will be wrapped.

\begin{center}
\begin{NiceTabular}{lXV[l]{5cm}}[hvlines]
  Function: & Description & Features:\\
  \Block[l]{*-1}{Compensation\\ Function:} 
   & \Block[l]{*-1}{Compensates for various grid perturbations and changes $\cos\varphi$} 
   & the content of that cell has been increased \\
  && customizable and so\\
\end{NiceTabular}
\end{center}

\end{document}

上述代码的输出

相关内容