
Tengo un problema al utilizar varias filas y tablas largas. El contenido de la celda de varias filas es muy grande y va mucho más allá del límite de las filas "sin varias filas". LaTeX ignora eso y comienza la siguiente fila justo detrás de esas filas, sobrescribiendo así el contenido.
A continuación un código mínimo de trabajo:
\documentclass{article}
\usepackage{longtable}
\usepackage {multirow}
\usepackage{lipsum}
\begin{document}
\begin{center}
\begin{longtable}{|p{.15\textwidth}|p{.15\textwidth}|p{0.65\textwidth}|}
\hline
1 & 1.1 & \multirow{3}{.65\textwidth} {\lipsum[1] }\\
& 1.2 & \\
& 1.3 & \\ \hline
2 & 2.1 & \lipsum[2] \\ \hline
\end{longtable}
\end{center}
\end{document}
Cualquier ayuda es realmente apreciada ...
Respuesta1
Todavía no estoy seguro de lo que está buscando, pero según sus últimos comentarios sobre agregar vspace
, tengo curiosidad por saber por qué no coloca el número de sección (1.1, 1.2 y 1.3) en la misma celda en la columna 2. Las celdas en la tercera Las columnas se reducirán y expandirán automáticamente si agrega o elimina texto. Si tiene filas donde dos secciones contienen texto, coloque esa sección en una fila separada, consulte el ejemplo 2.
Dos mejoras adicionales:
- Retire el
centering
entorno.mesa largaestá centrado de forma predeterminada y utiliza su propio algoritmo de alineación (ver documentación) - Calcule las filas teniendo en cuenta la influencia de
tabcolsep
sy el ancho de las reglas verticales, consulte el nuevo preámbulo. Si tienes varias tablas similares te recomiendo que carguesformacióny defina dos nuevos tipos de columnas usando\newcolumntype
, que luego puede usar en los preámbulos de sus tablas:
\newcolumntype{M}{p{\dimexpr(0.175\linewidth-2\tabcolsep-1.5\arrayrulewidth)}}
\newcolumntype{N}{p{\dimexpr(0.65\linewidth-2\tabcolsep-\arrayrulewidth)}}
El preámbulo del primer cuadro:
\begin{longtable}{|M|M|N|}
\documentclass{article}
\usepackage{longtable}
\usepackage{lipsum, array}
\begin{document}
\begin{longtable}{
|p{\dimexpr(0.175\linewidth-2\tabcolsep-1.5\arrayrulewidth)}
|p{\dimexpr(0.175\linewidth-2\tabcolsep-1.5\arrayrulewidth)}
|p{\dimexpr(0.65\linewidth-2\tabcolsep-\arrayrulewidth)}|}
\hline
1 & 1.1 \par 1.2\par 1.3 & \lipsum[1]\\\hline
2 & 2.1 & \lipsum[2] \\ \hline
\end{longtable}
\end{document}
Seguramente habría elegido un diseño diferente, usandopestañasreglas y no reglas verticales.
\documentclass{article}
\usepackage{longtable}
\usepackage{lipsum, array}
\newcolumntype{O}{p{\dimexpr(0.175\linewidth-1.5\tabcolsep)}}
\newcolumntype{P}{p{\dimexpr(0.65\linewidth-\tabcolsep)}}
\begin{document}
\begin{longtable}{@{}OOP@{}}
\toprule \addlinespace[1ex]
1 & 1.1 \par 1.2\par 1.3 & \lipsum[1]\\\midrule \addlinespace[1ex]
2 & 2.1 & \lipsum[2] \\\cmidrule(l{\tabcolsep}){3-3}
& 2.2\par 2.3 & \lipsum[2] \\ \midrule
\end{longtable}
\end{document}