我目前正在盡力為系統設定使用者手冊。它工作正常,除了我在嘗試設定表格時不斷遇到相同的問題。
我想產生一個包含三列的表,第一列命名一個函數,第二列描述它,最後一列命名功能範例等。由於最後一列可能會顯示幾個範例,因此我需要更多行。
我嘗試在tabularx
- 環境中使用multicolumn
和multirow
命令解決這個問題,但並沒有真正成功。
現在我嘗試使用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}