Cómo poner puntitos en una tabla hasta el final de la celda

En esta entrada mostraré cómo poder rellenar una tabla con puntitos, hasta la celda siguiente.
El comando «dotfill», nos permite rellenar la celda con puntitos. Pero si sólo lo hacemos así, solo nos rellenará la celda actual. Y quedará un espacio en blanco, antes del texto de la siguiente celda. Como se ve a continuación. (Por cierto, recuerda que con «p{40mm}» definimos la anchura de la columna.)

begin{table}[htb]
begin{center}
begin{tabular}{p{40mm} r}
hline
Ciudad & Altura \
hline hline
Ciudad de México dotfill & 2250 m\
Madrid dotfill & 650 m \
Ginebra dotfill & 430 m \
París dotfill & 50 m \
hline
end{tabular}
caption{Altura respecto el nivel del mar.}
label{ta:altura}
end{center}
end{table}

Podemos poner puntitos al final de la primera columna y al inicio de la segunda columna. Pero el seguirá quedando un espacio en blanco entre ambas columnas.

begin{table}[htb]
begin{center}
begin{tabular}{p{40mm} r}
hline
Ciudad & Altura \
hline hline
Ciudad de México dotfill & dotfill 2250 m\
Madrid dotfill & dotfill 650 m \
Ginebra dotfill & dotfill 430 m \
París dotfill & dotfill 50 m \
hline
end{tabular}
caption{Altura respecto el nivel del mar.}
label{ta:altura}
end{center}
end{table}

Para indicar que no queremos ningún espacio, lo podemos hacer con @{}. Este comando sirve para definir el tipo de separación entre columnas (un puntito, una raya, otros símbolos…). Entre {} se indica el símbolo que queremos usar (click aquí). Como aquí no ponemos ninguno, queremos decir que no habrá ninguna separación.

El resultado sigue sin ser bueno. Los puntitos no están todos equidistantes. Hay una rotura en esa simetría entre las dos columnas. (En este ejemplo se ve en «. .650».)

begin{table}[htb]
begin{center}
begin{tabular}{p{40mm}@{} r}
hline
Ciudad & Altura \
hline hline
Ciudad de México dotfill & dotfill 2250 m\
Madrid dotfill & dotfill 650 m \
Ginebra dotfill & dotfill 430 m \
París dotfill & dotfill 50 m \
hline
end{tabular}
caption{Altura respecto el nivel del mar.}
label{ta:altura}
end{center}
end{table}

En internet encontré un truquito muy inteligente (click aquí), donde se hace todo en una única columna. Por eso, primero fusionamos ambas columnas con el paquete {multirow}.

usepackage{multirow}

begin{table}[htb]
begin{center}
begin{tabular}{p{40mm} l}
hline
Ciudad & Altura\
hline hline
multicolumn{2}{c@{}}{Ciudad de México dotfill 2250 m}\
multicolumn{2}{c@{}}{Madrid dotfill 650 m}\
multicolumn{2}{c@{}}{Ginebra dotfill 430 m}\
multicolumn{2}{c@{}}{París dotfill 50 m}\
hline
end{tabular}
caption{Altura respecto el nivel del mar.}
label{ta:altura}
end{center}
end{table}

Deja un comentario