¿Cómo alinear esta tabla para que se ajuste al ancho de la página?

¿Cómo alinear esta tabla para que se ajuste al ancho de la página?

Quiero alinear esta tabla. este es mi código

\documentclass[a4paper, 12pt]{article}
\usepackage[left=15mm,right=20mm,top=20 mm,bottom=20mm]{geometry}
\usepackage{lipsum}
\usepackage{longtable}
\begin{document}
\lipsum[1]
\begin{longtable}{|p{10.8 cm}|p{6 cm}|}
\hline 
\multicolumn{1}{|c|}{\textbf{\textit{Solve}}}&\multicolumn{1}{|c|}{\textbf{\textit{Result}}} \\
\hline 
 &\\
 &\\
 &\\
 &\\
 &\\
 &\\
&\\
 \hline 
\end{longtable}
\end{document}

ingrese la descripción de la imagen aquí

Cómo alinear esta tabla para que se ajuste al ancho de la página cuando cambio mi configuración engeometry?

Respuesta1

El ancho del bloque de texto es \textwidthel ancho de la tabla, es el ancho de sus celdas más 2\tabcolsepel relleno para cada celda más \ararryrulewidthpara cada línea vertical, por lo que

\documentclass[a4paper, 12pt]{article}
\usepackage[left=15mm,right=20mm,top=20 mm,bottom=20mm]{geometry}
\usepackage{lipsum}
\usepackage{longtable}
\begin{document}
\lipsum[1]
\begin{longtable}{
|p{0.7\dimexpr \textwidth-3\arrayrulewidth-4\tabcolsep\relax}|
 p{0.3\dimexpr \textwidth-3\arrayrulewidth-4\tabcolsep\relax}|
}
\hline 
\multicolumn{1}{|c|}{\textbf{\textit{Solve}}}&\multicolumn{1}{|c|}{\textbf{\textit{Result}}} \\
\hline 
 &\\
 &\\
 &\\
 &\\
 &\\
 &\\
&\\
 \hline 
\end{longtable}

\end{documento}

Respuesta2

Puede utilizar el tabularxpaquete para calcular automáticamente el tamaño de algunas columnas.

El comando básico a utilizar es

\begin{tabularx}{\textwidth}{|X|X|}

Ese comando crea una tabla que toma el ancho del texto con dos columnas. Del tabularx ( texdoc tanbularx) manual:

Normalmente, todas las columnas X en una sola tabla están configuradas con el mismo ancho, sin embargo, es posible hacer que tabularx las establezca con diferentes anchos. Un argumento de preámbulo {>{\hsize=.5\hsize}X>{\hsize=1.5\hsize}X}especifica dos columnas, la segunda será tres veces más ancha que la primera. Sin embargo, si quieres jugar juegos como este, debes seguir las dos reglas siguientes.

• Asegúrese de que la suma de los anchos de todas las columnas X no cambie. (En el ejemplo anterior, los nuevos anchos aún suman el doble del ancho predeterminado, lo mismo que dos columnas X estándar).

• No utilice entradas \multicolumn que crucen cualquier columna X. Como ocurre con la mayoría de las reglas, estas pueden infringirse si sabe lo que está haciendo.

información relacionada