forzar tabla larga al ancho del texto

forzar tabla larga al ancho del texto

En lugar de especificar el ancho de cada columna en una tabla larga (ver más abajo), ¿hay alguna manera de hacer que ajuste automáticamente su tamaño para que coincida con el ancho del texto, pero no entre en los márgenes?

\floatsetup[longtable]{LTcapwidth=\textwidth}
\scriptsize 
\begin{longtable}[c] 
{p{0.045\textwidth}p{0.045\textwidth}p{0.045\textwidth}p{0.045\textwidth}p{0.045\textwidth}p{0.05\textwidth}p{0.045\textwidth}p{0.045\textwidth}p{0.045\textwidth}p{0.045\textwidth} p{0.045\textwidth} p{0.045\textwidth} p{0.045\textwidth}} 
\caption{Insert caption here}
\hline \multicolumn{13}{c} %Removed code for 13 column multiple page table%
 \end{longtable}

Respuesta1

Utiliza el mismo enfoque que Zarko y Skillmon, pero utiliza un registro de longitud para evitar repetir el cálculo 13 veces.

\documentclass{article}
\usepackage{longtable}
\usepackage{showframe}

\newlength{\mycolwidth}

\begin{document}
\scriptsize 
\setlength{\mycolwidth}{\dimexpr \textwidth/13 - 2\tabcolsep}%
\begin{longtable}[c]{*{13}{p{\mycolwidth}}}
\caption{Insert caption here}
\endfirsthead
\hline 
\multicolumn{13}{c}{Removed code for 13 column multiple page table}\\
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11 & 12 & 13
\end{longtable}
\end{document}

manifestación


En los bordes hay un hueco automático \tabcolsepque se puede quitar de esta manera.

\documentclass{article}
\usepackage{longtable}
\usepackage{showframe}

\newlength{\mycolwidth}

\begin{document}
\scriptsize 
\setlength{\mycolwidth}{\dimexpr \textwidth - 24\tabcolsep}%
\divide \mycolwidth by 13

\begin{longtable}[c]{@{}*{13}{p{\mycolwidth}}@{}}
\caption{Insert caption here}
\endfirsthead
\hline 
\multicolumn{13}{c}{Removed code for 13 column multiple page table}\\
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11 & 12 & 13
\end{longtable}
\end{document}

información relacionada