Actualmente estoy haciendo todo lo posible para configurar un manual de usuario para un sistema. Está funcionando bien, excepto que continuamente tengo el mismo problema al intentar configurar tablas.
Me gustaría generar una tabla con tres columnas, la primera de las cuales nombra una función, la segunda la describe y la última nombra ejemplos de características, etc. Como la última de las columnas puede mostrar varios ejemplos, necesitaré más filas para eso.
Intenté resolver eso en el tabularx
entorno - con los comandos multicolumn
y multirow
, pero no tuve mucho éxito.
Ahora he intentado utilizar el NiceTabular
entorno, que realmente funciona. Sólo hay un pequeño defecto que realmente no puedo solucionar:
\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}
Si la columna del medio excede la altura de las columnas adyacentes (supongo que sucederá lo mismo con la primera/tercera), el texto simplemente no se ajusta correctamente sino que excede los límites verticales de la celda. No pude encontrar una solución (en el manual de NiceMatrix) porque no estoy muy seguro de cómo verbalizar el problema. Quizás alguien pueda ayudarme con eso. Lo siento si falta información. Es mi primera publicación aquí.
¡Gracias de antemano!
Respuesta1
Los comandos \Block
de nicematrix
no crean espacio (excepto los bloques de una sola fila que crean un espacio vertical y los bloques de una sola columna que crean un espacio horizontal). Debería probar el paquete tabularray
que pueda solucionar ese tipo de problema.
Sin embargo, si deseas utilizar nicematrix
, debes darle más espacio a la segunda columna, por ejemplo con el siguiente 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}