As linhas após as linhas com várias colunas aparecem mais largas na tabela longa. Como posso resolver isso?

As linhas após as linhas com várias colunas aparecem mais largas na tabela longa. Como posso resolver isso?

Eu tenho esse problema em que as linhas posteriores longtablesão \multicolumn{1}{r}{Some text}contraídas:

Problema:

Aqui está um exemplosegurando todos os pacotes que uso atualmente:

\documentclass[12pt]{article} 
\usepackage{geometry,graphicx,csquotes}
\usepackage{pdfpages,enumitem,xcolor,sidenotes,fancyhdr}
\usepackage{longtable,booktabs,multicol,colortbl,url,pbox,pifont}

\begin{document}
        \begin{longtable}{@{}rl@{}}
            \rowcolor{tablehead}
                \multicolumn{2}{c}{{\color{tabletxt}
                     \textbf{A header which is multicolumn}}}
            \\ \addlinespace[2mm]
            \rowcolor{tableodd}
                \multicolumn{1}{c}{Text}
            &
            \multicolumn{1}{c}{Website}
            \\ \addlinespace[-1mm]
                \midrule \addlinespace[2mm]
                % HEADER END
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{tableodd} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{tableodd} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{tableodd} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{tableodd} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{tableodd} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
        \end{longtable}
\end{document}

Resultando na tabela a seguir (observe a diferença na largura):

mesa com problema

Uma solução:

Ao usar \multicolumn{}{}{}em todas as células, isso resolve o problema:

\documentclass[12pt]{article} 
\usepackage{geometry,graphicx,csquotes}
\usepackage{pdfpages,enumitem,xcolor,sidenotes,fancyhdr}
\usepackage{longtable,booktabs,multicol,colortbl,url,pbox,pifont}

\begin{document}
        \begin{longtable}{@{}rl@{}}
            \rowcolor{tablehead}
                \multicolumn{2}{c}{{\color{tabletxt}
                    \textbf{A header which is multicolumn}}}
            \\ \addlinespace[2mm]
            \rowcolor{tableodd}
                \multicolumn{1}{c}{Multicolumn text}
            &
            \multicolumn{1}{c}{Multicolumn website}
            \\ \addlinespace[-1mm]
                \midrule \addlinespace[2mm]
                % HEADER END
            \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
            \rowcolor{tableodd}
                \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
            \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
            \rowcolor{tableodd}
                \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
            \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
            \rowcolor{tableodd}
                \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
            \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
            \rowcolor{tableodd}
                \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
            \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
            \rowcolor{tableodd}
                \multicolumn{1}{r}{Some Text}
                & \multicolumn{1}{l}{\url{http://www.example.com/example}} \\
        \end{longtable}
\end{document}

O que resulta na seguinte tabela:

insira a descrição da imagem aqui

Leitura adicional

Na seção 4 "Entradas de múltiplas colunas" doMesa compridadocumentação, David Carlisle descreve os comandos \kille \setlongtables. Mas não está claro para mim como isso resolve os problemas. Tentei usar kill em uma linha vazia no topo, mesmo em uma coluna múltipla abrangendo ambas as colunas.

Mesmo depois de várias passagens, não consigo alinhar as linhas, por assim dizer. Acredito firmemente que existe uma opção melhor do que usar várias colunas em todas as células.

Alguma ideia?

Responder1

A causa do seu problema é característica decolortblpacote, veja a explicação nas seções 1 e 2 da documentação do pacote.

A solução mais simples é não usar @{}na definição delongtablecolunas: em vez de \begin{longtable}{@{}rl@{}}você deve usar apenas \begin{longtable}{rl}:

insira a descrição da imagem aqui

\documentclass[12pt]{article}
\usepackage{geometry}
\usepackage[table]{xcolor}
\usepackage{booktabs, longtable}
\usepackage{url}

\begin{document}
        \begin{longtable}{rl}
            \rowcolor{gray}
                \multicolumn{2}{c}{{\color{white}
                    \scshape \textbf{A header which is multicolumn}}}
            \\ \addlinespace[2mm]
            \rowcolor{gray!30}
                \multicolumn{1}{c}{Text}
            &
            \multicolumn{1}{c}{Website}
            \\ \addlinespace[-1mm]
                \midrule \addlinespace[2mm]
                % HEADER END
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{gray!30} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{gray!30} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{gray!30} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{gray!30} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
            \rowcolor{gray!30} Some text & \url{http://www.example.com/example} \\
                Some text & \url{http://www.example.com/example} \\
        \end{longtable}
\end{document}

Observação:como observadoMicoem seu comentário, as fontes Computer Modern não apresentam um formato/face de fonte em versalete em negrito.

informação relacionada