Saltar al contenido

array, tabularx, longtable y tabulary en Scissor LaTeX

Los paquetes array y tabularx y sus parientes funcionan en parte en Scissor LaTeX: las tablas tabularx, tabulary, longtable y xltabular se componen como tabular, y las celdas largas se cortan en varias líneas cuando la tabla sería más ancha que la línea; los anchos de columna (p{3cm}, X, el ancho de la tabla) y el código >{...}/<{...} se ignoran, \newcolumntype es desconocido y los encabezados de longtable no se repiten.

Qué hacen los paquetes

  • array añade tipos de columna como m{width} y b{width}, código antes y después de cada celda con >{...} y <{...}, y \newcolumntype para tus propias letras de columna.
  • tabularx da \begin{tabularx}{\textwidth}{lX}, donde las columnas X se estiran para que la tabla tenga el ancho indicado. tabulary hace lo mismo con columnas L, C, R, J que se reparten el ancho según su contenido.
  • longtable permite que una tabla se divida entre páginas, con un encabezado que se repite (\endhead). xltabular combina longtable y tabularx.

Qué funciona aquí

FunciónEn Scissor LaTeXNotas
tabularx, tabulary, xltabular, longtable, tabular*En parteSe componen como tabular. El argumento del ancho total se ignora.
Columnas X, L, C, R, JEn parteX y L se alinean a la izquierda, C se centra, R se alinea a la derecha.
p{3cm}, m{3cm}, b{3cm}En parteAlineadas a la izquierda; el ancho se ignora.
Texto largo en una celdaFuncionaSe corta en varias líneas cuando, si no, la tabla sería más ancha que la línea.
>{\bfseries}l, r<{\%}Se omiteEl código antes y después de las celdas se ignora.
\newcolumntype{C}{...}No compatibleSe omite con una nota en Problemas, y su definición se imprime como texto. Escribe el tipo de columna completo en su lugar.
\endhead, \endfirsthead, \endfoot, \endlastfootSe omiteUna tabla larga se divide entre páginas, pero su encabezado no se repite.
\tabularnewlineFuncionaIgual que \\.
\arraybackslashNo compatibleSe omite con una nota en Problemas; por lo demás, no hace daño.

Ejemplos

Una tabla tabularx con una columna que se estira. El texto largo se corta en el borde del texto, como lo haría en una instalación de TeX:

tabularx con una columna X

LaTeXPreámbulo: \usepackage{tabularx}Abrir en el editor (se abre en una pestaña nueva)
\begin{tabularx}{\textwidth}{lX}
\hline
Name & Notes \\
\hline
Erika Mustermann & Leads the project, writes the reports and checks
  every one of the 44 measurements twice before they are published. \\
John Doe & Builds the test setup. \\
\hline
\end{tabularx}
Compuesto por Scissor LaTeX: tabularx con una columna X

Una longtable con una fila de encabezado. La tabla se compone; en un documento largo, el encabezado no se repetiría en la página siguiente:

longtable con \endhead

LaTeXPreámbulo: \usepackage{longtable}Abrir en el editor (se abre en una pestaña nueva)
\begin{longtable}{lr}
\hline
Item & Count \\
\hline
\endhead
Pencils & 44 \\
Erasers & 12 \\
Rulers  & 7 \\
\hline
\end{longtable}

El código en >{...} se ignora, así que esta columna no sale en negrita y faltan los signos de porcentaje:

>{...} y <{...} se ignoran

LaTeXPreámbulo: \usepackage{array}Abrir en el editor (se abre en una pestaña nueva)
\begin{tabular}{>{\bfseries}l r<{\,\%}}
Growth & 44 \\
Share  & 12 \\
\end{tabular}

Escribe el formato dentro de las celdas en su lugar. Esto funciona aquí y en una instalación de TeX:

Formato escrito dentro de las celdas

\begin{tabular}{lr}
\textbf{Growth} & 44\,\% \\
\textbf{Share}  & 12\,\% \\
\end{tabular}

Compatibilidad

  • De una instalación de TeX a aquí: las tablas se componen y conservan su alineación, pero no sus anchos de columna. Busca letras de columna propias definidas con \newcolumntype.
  • De aquí a una instalación de TeX: los documentos se compilan allí sin cambios, y allí sí se aplican los anchos.

Los manuales completos están en CTAN: ctan.org/pkg/array, ctan.org/pkg/tabularx, ctan.org/pkg/tabulary, ctan.org/pkg/longtable y ctan.org/pkg/xltabular. Para las tablas en general, consulta Tablas en LaTeX.

Consulta también Tablas, multirow, booktabs y el generador de tablas LaTeX.

Preguntas y respuestas

¿Por qué mi columna p{3cm} no tiene 3 cm de ancho?

Los anchos de columna todavía no se aplican. El texto largo se sigue cortando en el borde del texto, así que la tabla se queda dentro de la página.

¿Se divide longtable entre páginas?

Sí, una tabla larga continúa en la página siguiente, pero las filas marcadas con \endhead no se repiten allí.

Scissor LaTeX compone cada ejemplo de esta página al generar el sitio. Última actualización: 2026-11-07.