
Me gustaría utilizar a tabular
y a longtable
en mi documento, pero los márgenes izquierdos no están alineados.
\documentclass[letterpaper,11pt]{article}
\usepackage{longtable}
\begin{document}
\begin{tabular}{p{2cm} p{15cm}}
entry 1 & bla bla bla bla bla \\
entry 2 & this is a tabular
\end{tabular}
\begin{longtable}{p{2cm} p{15cm}}
entry 3 & This is a longtable \\
entry 4 & with many more lines \\
entry 5 & but it isn't aligned
\end{longtable}
\end{document}
Esta preguntaestá relacionado, y también lo estáÉste.
Reemplazar \begin{longtable}{...}
con \begin{longtable}[l]{...}
en el código anterior no parece hacer nada.
Buscando a tientas, descubrí que al usarlo \setlength{\LTleft}{18pt}
mis márgenes parecen bastante iguales. ¿Existe una forma más elegante de longtables
alinearse a la izquierda tabulars
? ¿Puedo alinear mis tablas sin especificar números?
Respuesta1
Como lo señalaron otros miembros en los comentarios, ha establecido un ancho mayor que \textwidth
, en este caso tabularx
puede usarse para beneficiarse del ancho total disponible configurando la primera columna como p{2cm}
y el resto del ancho va a la segunda columna. . \noindent
También era necesario para tabularx
.
Para la longtable
puedes establecer lo mismo, pero para la segunda columna tenemos que calcular el ancho restante. Esto lo hace \dimexpr\linewidth-4\tabcolsep-2cm\relax
. Para entender esto, imagina la fila como |tabcolsep||p{2cm}||tabcolsep||tabcolsep||p{length}||tabcolsep|
, entonces, length
debería ser igual a \linewidth-2cm-4\tabcolsep
.
Por último, he utilizado \toprule
y \bottomrule
del booktabs
paquete para darle un aspecto profesional a las mesas.
\documentclass[letterpaper,11pt]{article}
\usepackage{tabularx,booktabs}
\usepackage{longtable}
\begin{document}
\noindent
\begin{tabularx}{\textwidth}{p{2cm} X}\toprule
entry 1 & bla bla bla bla bla \\
entry 2 & this is a tabular \\ \bottomrule
\end{tabularx}
\begin{longtable}{p{2cm} p{\dimexpr\linewidth-4\tabcolsep-2cm\relax}}\toprule
entry 3 & This is a longtable \\
entry 4 & with many more lines \\
entry 5 & but it isn't aligned \\ \bottomrule
\end{longtable}
\end{document}
Respuesta2
Como se menciona en un comentario, longtable
lo centrado tabular
tiene sangría. Sección 5 enla documentación del paqueteindica la solución. Al agregar \setlength\LTleft\parindent
al preámbulo, la tabla larga se configurará al ras a la izquierda, pero con la sangría de párrafo habitual.
\documentclass[letterpaper,11pt]{article}
\usepackage{longtable}
\setlength\LTleft\parindent
\begin{document}
\begin{tabular}{p{2cm} p{15cm}}
entry 1 & bla bla bla bla bla \\
entry 2 & this is a tabular
\end{tabular}
\begin{longtable}{p{2cm} p{15cm}}
entry 3 & This is a longtable \\
entry 4 & with many more lines \\
entry 5 & but it isn't aligned
\end{longtable}
\end{document}