problemas com longtable e multirow

problemas com longtable e multirow

Tenho um problema ao usar multirow e longtable. O conteúdo da célula com múltiplas linhas é muito grande e vai muito além do limite das linhas "sem múltiplas linhas". O LaTeX ignora isso e inicia a linha seguinte logo atrás dessas linhas, substituindo assim o conteúdo.

A seguir um código mínimo de trabalho:

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

Qualquer ajuda é realmente apreciada ...

Responder1

Ainda não tenho certeza do que você está procurando, mas com base em seus últimos comentários sobre a adição vspace, estou curioso para saber por que você não coloca o número da seção (1.1, 1.2 e 1.3) na mesma célula da coluna 2. As células na terceira as colunas serão reduzidas e expandidas automaticamente se você adicionar ou excluir texto. Se você tiver linhas onde duas seções contêm texto, coloque essa seção em uma linha separada, veja o exemplo 2.

Duas melhorias adicionais:

  1. Remova o centeringambiente.Mesa compridaé centralizado por padrão e usa seu próprio algoritmo de alinhamento (consulte a documentação)
  2. Calcule as linhas levando em consideração a influência de tabcolseps e a largura das réguas verticais, veja o novo preâmbulo. Se você tiver várias tabelas semelhantes, recomendo que você carreguevariedadee defina dois novos tipos de colunas usando \newcolumntype, que você poderá usar nos preâmbulos de suas tabelas:

\newcolumntype{M}{p{\dimexpr(0.175\linewidth-2\tabcolsep-1.5\arrayrulewidth)}}
\newcolumntype{N}{p{\dimexpr(0.65\linewidth-2\tabcolsep-\arrayrulewidth)}}

O preâmbulo da primeira tabela:

 \begin{longtable}{|M|M|N|}

insira a descrição da imagem aqui

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

Com certeza eu teria escolhido um layout diferente, usandoguias de livrosregras e sem regras verticais.

insira a descrição da imagem aqui

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

informação relacionada