Dos personas escriben el mismo texto y el compuesto con LaTeX parece un libro de verdad. Casi todo se reduce a un solo número: una \textwidth de 345pt. La clase estándar article detiene ahí la caja de texto, sea el papel A4 o US Letter, y convierte todo lo sobrante en margen. Medido, eso son unos 75 caracteres por línea: algo más de los 66 que la tipografía considera ideales, pero por un motivo. Esta página mide los números que deciden el aspecto de un documento LaTeX: por qué el suyo parece de aficionado y qué conviene cambiar.
¿Cuántos caracteres por línea? Lo que article da de verdad
Pase \lipsum[1-12] por \documentclass[a4paper]{article} en TeX Live 2024, extraiga el texto del PDF resultante y cuente: salen 75,1 caracteres por línea de media (99 líneas; la más larga, 85). The Elements of Typographic Style de Robert Bringhurst (1992) recoge la regla admitida: de 45 a 75 caracteres es una longitud de línea satisfactoria en composición a una columna, y 66 se considera lo ideal. La configuración por defecto de article se sitúa, pues, justo en el borde superior del rango aceptable. No es ilegible, pero la primera mejora está ahí.
| Medida | Caracteres por línea medidos | Veredicto |
|---|---|---|
250pt | 54,5 | estrecho; ancho de una nota, un apostilla o una de dos columnas |
280pt | 61,3 | cómodo; algo por debajo de los 66 ideales |
305pt | unos 66 | el ideal clásico; apto para lectura larga |
320pt | 69,9 | aún dentro del rango; ancho habitual en artículos |
345pt | 74,5 | el valor por defecto de article; borde superior del rango |
400pt | 85,8 | el ojo empieza a perder el inicio de la línea siguiente |
450pt | 93,7 | el fallo típico de un documento con los márgenes recortados con geometry |
Bringhurst transmite además una medición que no exige herramientas. Componga el alfabeto en minúsculas, de la a a la z, en la letra de texto: el ancho de esa secuencia es la longitud de alfabeto, y una línea debería medir de dos a tres alfabetos. Medido con \settowidth, Computer Modern en 10pt da a–z en 127,58pt. Una medida de 345pt equivale a 2,70 alfabetos, de modo que esta prueba coincide con el recuento de caracteres: cerca del límite, pero dentro. Lo grato es que el razonamiento se traslada. La regla japonesa de que una línea de caracteres de ancho completo se lee mejor hacia los 35 o 45 signos es esa misma idea de dos a tres alfabetos en otra escritura.
% narrow the measure toward the classic 66 characters per line
\usepackage[a4paper,textwidth=305pt]{geometry}
% or keep A4 and state the margins instead
\usepackage[a4paper,margin=45mm]{geometry}Lo llamativo es que subir el cuerpo apenas cambia el recuento de caracteres. Repita la misma medición en 11pt y 12pt: \textwidth crece a 360pt y 390pt, mientras que la línea da 70,1 y 70,0 caracteres. Las clases estándar ensanchan la medida al ritmo del cuerpo y mantienen la longitud de línea en caracteres casi constante, y en un valor más próximo a los 66 ideales que el de 10pt. Si lo que le molesta es la legibilidad, probar [11pt] es el movimiento más barato, y va antes que recurrir a geometry.
Por qué los márgenes de article parecen tan anchos
La respuesta no es que los márgenes se hicieran generosos, sino que la medida se fija primero y todo lo sobrante pasa a ser margen. size10.clo, que establece las dimensiones de las clases estándar, compara el ancho del papel menos una pulgada por lado con 345pt y toma el menor de los dos como \textwidth. Tanto en A4 (597,51pt) como en US Letter (614,30pt) esa resta supera los 345pt, así que en ambos papeles la medida es exactamente 345pt. Una hoja mayor solo agranda los márgenes: eso es todo lo que significó nunca «A4 tiene márgenes enormes».
% size10.clo (LaTeX 2024): the measure is a hard cap, not a fraction of the page
\setlength\@tempdima{\paperwidth}
\addtolength\@tempdima{-2in}
\setlength\@tempdimb{345\p@}
\ifdim\@tempdima>\@tempdimb\relax
\setlength\textwidth{\@tempdimb} % A4 and US Letter both land here
\else
\setlength\textwidth{\@tempdima}
\fiConviene corregir aquí una creencia extendida. Se lee que 345pt sería una elección pensada para el formato Letter y poco adecuada a A4, pero el código nunca mira el papel. El tope mismo es independiente del formato: A4 y Letter reciben la misma medida. En proporción es incluso Letter quien tiene los márgenes más anchos: ocupan el 42,3% del ancho de la hoja en A4 y el 43,8% en Letter. Y si 345pt parece angosto, la comparación está mal elegida. El plain TeX de Knuth fija \hsize=6.5in, es decir 469,75pt: más de 90 caracteres por línea con la misma medición. LaTeX recortó más de una cuarta parte para llegar a 345pt. Los márgenes anchos no son descuido: son el subproducto de una decisión que devolvió la longitud de línea al terreno de la legibilidad.
En el archivo sobrevive un fósil elocuente. size10.clo tiene una rama de compatibilidad con el viejo LaTeX 2.09, y allí el ancho está escrito sin cálculo alguno: \setlength\textwidth{345\p@}. El número 345 empezó siendo una constante llana; la maquinaria que lo trata como tope sensible al papel se le montó encima después. De ahí la regla práctica: no ensanche \textwidth a mano para recuperar margen. Si lo ensancha, la medida pasa a ser directamente la longitud de línea y cae en las filas de 400pt y 450pt de la tabla anterior. Para ganar espacio, use geometry indicando los márgenes, mantenga la línea en la franja de 66 a 75 y quite el espacio por arriba y por abajo.
Una línea en el preámbulo que cambia el aspecto: microtype
La única línea \usepackage{microtype} da el mejor rendimiento de todo lo que hay en esta página. Medido sobre un article de 11pt con codificación T1, medida de 180pt y cien párrafos de \lipsum, las cajas desbordadas caen de 128 a 15, mientras que el recuento de páginas solo baja de 43 a 42. No está, pues, comprimiendo el documento. Al dejar que la puntuación asome un pelo por el borde (protrusion) y estirar los anchos de los glifos bastante menos de un uno por ciento (font expansion), aplana la variación del espacio entre palabras, y los puntos que habría que haber arreglado a mano dejan de aparecer. El mecanismo corresponde a su propia página; aquí lo que importa es que casi no hay razón para prescindir de él.
\documentclass[11pt,a4paper]{article}
\usepackage[T1]{fontenc} % load this before microtype
\usepackage{microtype}
\usepackage[textwidth=320pt]{geometry}¿Cuántas tipografías usar? La contención es lo que más trabaja
La respuesta práctica es: tres como mucho — una para el texto, una para los títulos, la misma o deliberadamente emparejada, y una monoespaciada para el código. Los documentos que parecen de aficionado suelen fallar en una de dos cosas —la línea es demasiado larga o hay demasiadas tipografías— y lo segundo se detecta antes: el texto en una letra, los títulos en otra, los énfasis en una tercera, los pies de figura en una cuarta. El valor por defecto de LaTeX, Computer Modern, es una tipografía que diseñó el propio Knuth, de trazo fino y alto contraste. Resulta elegante, pero esos trazos finos pueden quedar anémicos en impresión basta o en pantalla pequeña. Si la sustituye, lmodern (sucesora de contornos saneados de Computer Modern), libertinus y newtx son opciones fiables, y cada una aporta texto, títulos y matemáticas como conjunto. Cambie la fuente matemática junto con la del texto: dejar las fórmulas en Computer Modern mientras la prosa se muda es el accidente más común.
¿Sangría o línea en blanco? Hacer las dos delata al aficionado
Hay dos maneras de marcar el paso de un párrafo a otro, y la convención es elegir una. Las clases estándar optan por la sangría sin blanco: medido, \parindent vale 15pt a 10pt, 17pt a 11pt y 17,62pt a 12pt, mientras que \parskip vale 0pt plus 1pt, es decir, ningún blanco, con un asomo de elasticidad reservado al salto de página. Quien encuentra los párrafos apretados añade entonces \setlength{\parskip}{1em} a solas, y ya tiene sangría y blanco a la vez: el corte se anuncia dos veces y engancha la vista. Si quiere separar con blanco, escriba siempre \setlength{\parindent}{0pt} al lado, o cargue el paquete parskip, que se ocupa de los dos extremos.
% pick ONE of these two, never both by accident
% (a) indent, no vertical space -- the standard-class default, nothing to write
% (b) vertical space, no indent:
\usepackage{parskip}Una dimensión más: la interlínea. Las clases estándar fijan \baselineskip en 12pt a 10pt, 13,6pt a 11pt y 14,5pt a 12pt, alrededor de 1,2 veces el cuerpo. Ensanche la medida y deje la interlínea igual, y el ojo dejará de encontrar el inicio de la línea siguiente. Trátelas como pareja: alargar la línea obliga a abrir la interlínea, y apretar la interlínea supone acortar la línea. (Cuando una norma de envío exige algo como interlineado de uno y medio, la mecánica está en la página de interlineado.) Que un párrafo parezca de aficionado o de oficio se decide casi siempre por estos tres juntos: longitud de línea, interlínea y forma de marcar el fin de párrafo.
Lo que no hay que tocar: deje de arreglar con \vspace y \\
Todos los ajustes vistos hasta aquí se hacen una sola vez, en el preámbulo. La regla gemela es no remendar el cuerpo del texto: nada de \vspace{1cm} para desplazar una figura, nada de \\ para que un título caiga mejor. El motivo es mecánico, no estético: LaTeX elige los cortes de línea y de página mirando el documento entero y buscando el mejor juego de pliegues, así que clavar un punto a mano desplaza todo lo que viene después. De ahí nace esa faena de vísperas de entrega en la que cada arreglo rompe otra cosa. Escriba estructura en el cuerpo y decida la apariencia en el preámbulo; mantenga ese reparto y una corrección seguirá siendo siempre una sola edición.
En orden: lleve primero la línea a la franja de 66 a 75 (con [11pt] o el textwidth de geometry); añada después la única línea de microtype; si cambia de tipografía, cambie el texto y las matemáticas a la vez; y decídase entre sangría o blanco para los párrafos, no ambos. Esos cuatro gestos convierten la mayoría de los documentos de «compuestos con LaTeX» en «compuestos para ser leídos». El ajuste fino que quede pertenece al preámbulo y no al cuerpo, y va al final.