{NiceTabular} - Espaçamento vertical automático em células

{NiceTabular} - Espaçamento vertical automático em células

Atualmente estou tentando o meu melhor para configurar um manual do usuário para um sistema. Está funcionando bem, exceto que estou continuamente enfrentando o mesmo problema ao tentar configurar tabelas.

Gostaria de gerar uma tabela com três colunas, sendo a primeira nomeando uma função, a segunda descrevendo-a e a última nomeando exemplos de funcionalidades e assim por diante. Como a última coluna pode exibir vários exemplos, precisarei de mais linhas para isso.

Tentei resolver isso no tabularxambiente - com comandos multicolumne multirow, mas não tive muito sucesso.

Agora tentei utilizar o NiceTabular-environment, que realmente funciona. Há apenas uma pequena falha que eu realmente não consigo contornar:

\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}

Se a coluna do meio exceder a altura das colunas adjacentes (acho que o mesmo acontecerá com a primeira/terceira), o texto simplesmente não será quebrado corretamente, mas excederá os limites verticais da célula. Não consegui encontrar uma solução (no manual NiceMatrix) para isso porque não tenho certeza de como verbalizar o problema. Talvez alguém possa me ajudar com isso. Desculpe se faltar informação. É meu primeiro post aqui.

Desde já, obrigado!

Responder1

Os comandos \Blockde nicematrixnão criam espaço (exceto os blocos de linha única que criam espaço vertical e os blocos de coluna única que criam espaço horizontal). Você deve experimentar o pacote tabularrayque é capaz de resolver esse tipo de problema.

Porém, se quiser usar nicematrix, você deve dar mais espaço para a segunda coluna, por exemplo com o seguinte código:

\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}

Saída do código acima

informação relacionada