Está en la página 1de 5

LaTeX LINUX USER

LaTeX en Linux (3ª Parte)

La Tabla de Multiplicar
(y otras)
Con este artículo continuamos nuestro paseo por el mundo de la

escritura con LaTeX. En las dos entregas anteriores hemos apren-

dido que LaTeX es un sistema de escritura profesional en el que, a

pesar de no ser de tipo WYSIWYG, se obtienen resultados de cali-

dad brillante con poco esfuerzo y donde fundamentalmente el

escritor se dedica a contar en su documento lo que le interesa sin

preocuparse del formato, que para eso LaTeX se ocupa de “todo”.


POR JOSE MANUEL GONZÁLEZ VIDA

E
n esta penúltima entrega vamos a {<I>FormatoColumnas<I>} El argumento FormatoColumnas se
abordar en primer lugar la creación Fila1_Columna1 & Fila1_Columna2U refiere a la alineación de las columnas.
de tablas con LaTeX. Después & \dots & Fila1_ColumnaN \\ Siempre debe aparecer una entrada por
trataremos la escritura matemática, Fila2_Columna1 & Fila2_Columna2U cada columna de la tabla. Se pueden
donde podremos comprobar que LaTeX & \dots & Fila2_ColumnaN \\ incluir ciertos elementos opcionales
es infinitamente mejor y más potente \dots & \dots & \dots & \dots \\ (separadores para delimitar los bordes
que cualquier editor científico del tipo FilaM_Columna1 & FilaM_Columna2U entre cada columna -los veremos en el
WYSIWYG. Posteriormente, en el próxi- & \dots & FilaM_ColumnaN siguiente ejemplo-). Las posibilidades
mo número, terminaremos nuestra serie \end{tabular} son:
sobre LaTeX viendo cómo incluir la • l: alineación a la izquierda.
bibliografía en nuestro documento (bien Como se puede comprobar, el entorno • r: alineación a la derecha.
directamente o creándonos nuestra que LaTeX usa para construir tablas es • c: alineación centrada de la
propia base de datos) y terminaremos el entorno tabular con determinados columna.
con un ejemplo de un proyecto donde se argumentos obligatorios y opcionales • p{ancho}: crea una columna de
usan todos los conceptos que hemos que vamos a ir viendo. La Posición es anchura ancho. El texto que se coloque
tratado en esta serie de artículos. un argumento opcional e indica la posi- dentro se trata como un párrafo (sin san-
ción vertical de la tabla respecto de la gría inicial) con la línea superior alinea-
¿Cómo construir tablas con línea en la que se ha incluido. Puede da con las otras columnas.
LaTeX? tomar uno de los tres valores si- Los Separadores son elementos
Las tablas son construcciones alineadas guientes: opcionales. Pueden tomarse entre los
que aunque no son demasiado fáciles de • t: la línea inferior de la tabla se siguientes:
construir con LaTeX, sin embargo éste alinea con la línea base de la línea actu- • |: introduce una línea vertical.
permite una enorme flexibilidad en su al. • ||: introduce dos líneas verti-
construcción y manipulación. Como • b: la línea superior de la tabla cales.
siempre lo mejor será que vayamos se alinea con la línea base de la línea • @{texto}: elimina el espacio
aprendiendo viendo un ejemplo: actual. entre columnas e inserta el texto señala-
• c: es la opción que se toma por do entre las columnas especificadas.
%Sintaxis de una tabla básica defecto y alinea la tabla de manera cen- Una vez vistos todos los argumentos del
\begin{tabular}[<I>Posición<I>]U trada respecto de la línea base. entorno tabular es el momento de pasar

www.linuxmagazine.com.es Número 03 87
LINUX USER LaTeX

Figura 1: Un primer ejemplo de una tabla. Figura 2: Una tabla con una “multicolumna”.

a la práctica escribiendo en nuestro edi- hemos construido. Con el símbolo & Obtenemos una tabla. Ahora me gustaría
tor de texto el siguiente ejemplo: separamos las distintas columnas en una que probaseis a sustituir la tabla de
fila. Podemos dejar una casilla vacía nuestro ejemplo por la siguiente
01 \documentclass[a4paper,12pt] colocando dos && o bien dejando un
{article} espacio en blanco entre ellos. Con las \begin{tabular}{|l|c|c|r|}
02 \usepackage[latin1]{inputenc} dos barras \\ indicamos a LaTeX que \hline
03 \usepackage[T1]{fontenc} comienza una nueva fila. {\bf Nombre} & {\bfU
04 \usepackage[spanish]{babel} Para separadores horizontales tenemos Apellidos} & {\bf DNI}U
05 \begin{document} el comando \hline que dibuja una línea & {\bf Calificación} \\
06 \begin{tabular}{|l|c|c|r|} horizontal entre fila y fila. Debe aparecer \hline
07 {\bf Nombre} & {\bf justo antes de la primera fila o justo Juan & López & 43434322LU
Apellidos} después de \\ si está entre dos filas. Dos & 5.3 \\
& {\bf DNI} & {\bf comandos \hline seguidos dibujan dos Emilio & Pérez & 45989845KU
Calificación} \\ líneas horizontales con un pequeño & 7.2 \\
08 Juan & López & 43434322L & espacio entre ellas. \cline{n - m} dibuja Gema & Gutiérez &U
5.3 \\ una línea horizontal entre las columnas \multicolumn{2}U
09 Emilio & Pérez & 45989845K & n y m. Si retocamos el ejemplo anterior {c|}{Dos celdas unidas} \\
7.2 \\ cambiando la tabla usando el siguiente \hline
10 Gema & Gutiérrez & 21388383A código: \end{tabular}
& 8.1
11 \end{tabular} \begin{tabular}{|l|c|c|r|} El resultado, como podemos observar en
12 \end{document} \hline la Figura 2, difiere del anterior en que
{\bf Nombre} & {\bf Apellidos}U hemos empleado el comando \multico-
El resultado de compilar el ejemplo ante- & {\bf DNI} & {\bfU lumn que se usa para unir varias colum-
rior lo tenemos en la Figura 1. Podemos Calificación} \\ nas de una misma fila. \multicolumn usa
observar en el listado de nuestro ejemplo \hline \hline como argumentos el número de colum-
que no hemos usado los argumentos Juan & López & 43434322L &U nas a unir, la alineación del texto a
opcionales y que en el formato de las 5.3 \\ Emilio & Pérez &U incluir en la “multicolumna” y, por últi-
columnas hemos escogido separadores 45989845K & 7.2 \\ mo, el texto que deseamos incluir. Por
simples para las columnas verticales. Gema & Gutiérrez &U último probad a sustituir la tabla anterior
Otro detalle importante que conviene 21388383A & 8.1 \\ por la siguiente:
observar es la utilización de los símbolos \hline
& y \\ en las distintas filas de la tabla que \end{tabular} \begin{tabular}{|@{\bfU
Capítulo: } r@{\qquadU
Tabla 1. Algunas fórmulas matemáticas sencillas Temas: }c@{ - }c|}
\hline
Instrucción Uso
1 & 1 & 5 \\
_{subíndice} Texto en subíndice
2 & 6 & 9 \\
^{superíndice} Texto en superíndice
3 & 10 & 14 \\
\sqrt[n]{radicando} Raíz enésima del radicando
\hline
\frac{numerador}{denominador} Cociente entre el numerador y el denominador
\end{tabular}

88 Número 03 www.linuxmagazine.com.es
Figura 3: Un ejemplo de escritura en modo texto y en modo matemático. Figura 4: Un ejemplo de escritura matemática con fórmulas sencillas.

Fijaros en que en este ejemplo los sepa- largo del párrafo que se está Para ello en LaTeX emplearemos el
radores de las columnas son las palabras escribiendo o en párrafos separados. entorno equation. La sintaxis que tiene
que hemos incluido en los argumentos El texto de tipo matemático intro- este entorno es:
del entorno tabular. ducido en la misma línea de escritura
(modo texto) ha de ser introducido %Sintaxis del entorno equation
Tablas como objetos entre los símbolos $ y $. Para intro- \begin{equation}
flotantes ducir el texto matemático en líneas \label{Etiqueta}
Recordareis que en el artículo del separadas se suele hacer encerrándo- Fórmula
número anterior explicábamos el con- lo entre los símbolos $$ y $$ o bien \end{equation}
cepto de objeto flotante basándonos en la entre los símbolos \[ y \].
idea de que las figuras son objetos indi- Introducimos el siguiente ejemplo Este entorno numera automáticamente
visibles y por tanto pueden “flotar” y ser dentro de un documento LaTeX con las ecuaciones utilizando el contador
reubicadas en nuestro documento (den- las cabeceras estándares que estamos denominado equation. De este modo
tro de unas determinadas pautas) con el usando y lo compilamos. podemos hacer referencia a las distintas
fin de que el aspecto global del docu- fórmulas con los comandos
mento cumpla nuestras expectativas. En Sean $x$, $y$ y $z$U \ref{Etiqueta} y \pageref{Etiqueta}.
este sentido las tablas no deberían funciones de $u$ y $v$, Además también disponemos del
(aunque hay excepciones) ser separadas continuas en un dominioU comando \eqref{Etiqueta} que, a
en más de una página, por tanto su ubi- $D$ del plano $u,v$. diferencia de los anteriores, encierra el
cación debe ser determinada por el com- El conjunto de puntosU número asignado a la ecuación entre
pilador. Para tratar las tablas como obje- dados por: paréntesis.
tos flotantes disponemos del entorno $$ A diferencia del modo texto, en modo
table. Su sintaxis es: \vec{r}(u,v)=(x(u,v),yU matemático LaTeX presenta un compor-
(u,v),z(u)), tamiento distinto, es decir, además de
%Sintaxis del entorno table $$ usar una fuente distinta y con letras de
\begin{table} se llama superficieU tipo itálico, no respeta los espacios entre
Entorno tabular paramétrica. palabras, sólo deja espacios cuando lo
\caption{Pie de la tabla} considera necesario. No se permite
\label{Etiqueta} El resultado debe ser parecido al que escribir vocales acentuadas ni la “ñ” en
\end{table} mostramos en la Figura 2. Observemos el modo matemático. LaTeX se ocupa de
que los caracteres que usa LaTeX para modo automático de elegir los tamaños
Las tablas, al igual que las figuras, la escritura en modo matemático son adecuados de letra adecuados a diversas
pueden llevar su etiqueta con el fin de distintos a los hemos visto hasta circunstancias (fracciones, superíndices
referenciarlas en nuestro documento y ahora. Se trata de letras ligeramente o subíndices, etc.).
también su pie, que nos servirá también cursivas y se emplea una fuente más
para crear el índice de tablas. redondeada. Algunas Fórmulas Sencillas
En la Tabla 1 mostramos la forma de
Modo Texto y Modo El Entorno Equation escribir super y subíndices, raíces desde
Matemático Es frecuente, cuando se escriben textos cuadradas a cualquier orden, fracciones,
Básicamente LaTeX distingue el texto científicos, hacer referencias a determi- etc. Una vez que veamos la sintaxis a
matemático según se introduzca a lo nadas fórmulas que aparecen en el texto. usar en esta tabla, podemos escribir el

www.linuxmagazine.com.es Número 03 89
LINUX USER LaTeX

Figura 5: Una función definida a trozos. Figura 6: Uso de estructuras de tipo teorema.

siguiente ejemplo en el cuerpo de nues- matemático. Los podemos encontrar en que se adaptan al tamaño de la misma.
tro documento: la Tabla 2. Pues bien, el entorno array permite ir pre-
cedido por el comando comandos \left y
Sea $p(x)=a_0+a_1x+a_2x^2+U Construcciones Especiales en terminado por \right. Observemos que en
\cdots +a_nx^n$. Modo Matemático nuestro ejemplo hemos escrito el símbolo
Sea $p(x)=\sqrt{a_0}+\sqrt[3]U Como estaréis comprobando el modo ( justo después del comando \left y ) justo
{a_1}x+\sqrt{a_2}x^2+ \cdotsU matemático da mucho de sí en LaTeX. En después del comando \right. Son estos
+a_nx^n$. este apartado vamos a aprender a cons- comandos los que hacen que el símbolo
Sea $p(x)=\frac{a_0}{a_n}+\sqrtU truir matrices y lo que se denominan fun- que colocamos justo después adapte el
[3]{a_1}x+\sqrt{a_2}x^2+ \cdotsU ciones definidas a trozos. Si imaginamos tamaño del array. Además permiten
+a_nx^n$. una matriz en matemáticas podemos pen- estructuran un poco más especiales.
sar que para escribirla con LaTeX hay que Escribid el siguiente código en el cuerpo
Lo compilamos y visualizamos el resul- usar el entorno tabular que vimos antes del ejemplo anterior:
tado, que debe ser parecido al que pero este entorno es válido sólo en modo
mostramos en la Figura 4. texto. El entorno equivalente en modo $$
matemático es array. Su sintaxis es pareci- f(x)=
El paquete amsmath da a la del entorno tabular. Lo vemos en el \left\{
El paquete amsmath es una extensión siguiente ejemplo: \begin{array}{ll}
para LaTeX que proporciona nuevas 1 & \mbox{ si $x>1$} \\
características para facilitar la escritura 01 \documentclass[a4paper, 0 & \mbox{ en el resto deU
de fórmulas matemáticas y mejorar la 12pt]{article} los casos}
calidad tipográfica del documento final. 02 \usepackage[latin1]{inputenc} \end{array}
Como regla general incluiremos siempre 03 \usepackage[T1]{fontenc} \right.
este paquete en nuestros documentos 04 \usepackage[spanish]{babel} $$
cuando éstos contengan fórmulas y no 05 \usepackage{amsmath}
distinguiremos en esta sección los 06 \begin{document} El resultado de compilar el ejemplo ante-
comandos propios de LaTeX de los que 07 $$ rior lo tenemos en la Figura 5. Se trata de
nos proporciona el paquete amsmath. 08 \left( una función definida a trozos, que de
Hemos visto antes que cuando escribi- 09 \begin{array}{ccc} hecho, no es más que un array de dos
mos texto en modo matemático LaTeX 10 1 & 2 & 3 \\ columnas que va precedido de un símbo-
no respeta los espacios, y entonces 11 4 & 5 & 6 \\ lo de llave ({) y que no se cierra con otra
¿cómo incluir texto en nuestras fórmu- 12 7 & 8 & 9 llave (fijaros que para no cerrar el array
las? La respuesta se halla en el comando 13 \end{array} con un símbolo usamos \right.). Además
\text{texto a incluir}. El texto que 14 \right) hemos usado otro nuevo comando
incluyamos dentro de este comando será 15 $$ \mbox que nos sirve al igual que el \text
tratado exactamente como los textos que 16 \end{document} para poder escribir texto dentro del
hemos visto hasta ahora. modo matemático.
También tenemos en LaTeX otra serie El resultado obtenido al compilar, hablan-
de comandos que nos proporcionan la do sólo en términos de formato, es una Simbología Matemática
posibilidad de dejar espacios de distinto tabla (como las del entorno tabular) pre- La simbología matemática en LaTeX es
tamaño en nuestras fórmulas en modo cedida y terminada por unos paréntesis increíblemente extensa y abarca varios

90 Número 03 www.linuxmagazine.com.es
LaTeX LINUX USER

dor propio del entorno que hemos crea-


Tabla 2. Espaciados en Modo Matemático do.
Comando Abreviatura Espacio proporcionado Para las demostraciones podemos usar
\thinspace \, pequeño el paquete amsmath que contiene el
\medspace \: mediano entorno proof. Este entorno produce un
\thickspace \; grande encabezamiento con la palabra Proof. y
\negthinspace \! espacio negativo pequeño produce un símbolo en forma de cuadra-
\negmedspace espacio negativo mediano
dito al final. Para redefinir el encabeza-
\negthickspace espacio negativo grande
miento ejecutaremos el siguiente código
dentro de nuestro documento (da igual si
miles de símbolos que van desde las 13 \end{teorema} se hace en el preámbulo o en el cuerpo
clásicas letras griegas, todo tipo de fle- 14 \begin{lema}[Lema de del mismo):
chas, operadores binarios, funciones fulanito]
matemáticas y un largo etcétera que 15 Esto es una lema \renewcommand*{\proofname}U
por razones de espacio no podemos 16 \end{lema} {Demostración}
incluir aquí pero que podemos encon- 17 \end{document}
trar en el libro “Una Descripción de En el siguiente ejemplo os muestro cómo
LaTeX2e” realizado por Tomás Bautista, El resultado de compilar el texto anterior se usa.
sobre el trabajo inicial de Hubert Partl, lo mostramos en la Figura 6. ¿Qué hemos
Irene Hyna, Elisabeth Schlegl y Tobias conseguido? Pues mediante el comando 01 \documentclass[a4paper,
Oetiker y del que hemos puesto un \newthorem hemos creado nuestros pro- 12pt]{article}
enlace a una versión en PDF en el pios entornos y les hemos asignado un 02 \usepackage[latin1]{inputenc}
punto [3] de la bibliografía de este nombre de entorno y un contador pro- 03 \usepackage[T1]{fontenc}
artículo. Además, a modo de ejemplo, pio. Me explico, mediante la línea 04 \usepackage[spanish]{babel}
os he incluido en la Figura 7cómo se \newtheorem{teorema}{Teorema} esta- 05 \begin{document}
escriben todas las letras clásicas griegas 06 \renewcommand*{\proofname}
con LaTeX. {Demostración}
07 \begin{proof}
Teoremas y Demostraciones 08 Prueba del resultado\dots
Otros elementos comunes dentro de 09 \end{proof}
artículos de investigación y libros de 10 \end{document}
contenido matemático son los teoremas
y demostraciones. Atendiendo al sis-
tema de numeración llamaremos Conclusión
entornos de tipo teorema a estructuras Con lo visto hasta ahora sois ya unos
de tipo teorema, proposición, lema, Figura 7: Las letras griegas con LaTeX. casi LaTeXpertos, pero remataremos
corolario, definición, conjetura, etc. En nuestros conocimientos en la próxima
LaTeX tenemos el comando \newtheo- mos creando un nuevo entorno que se entrega donde podremos ver a LaTeX en
rem que nos permitirá definir en nues- llama teorema de tal manera que cada todo su esplendor, creando un proyecto
tro documento tantos entornos de tipo vez que usamos un entorno de este tipo con capítulos, índices, figuras, tablas,
teorema como necesitemos. Como siem- actualizamos un contador que va desde bibliografía y ¡todo de manera automáti-
pre, lo mejor es comprender su manejo el 1,2,… y creamos un texto que comien- ca! Además os pondremos en nuestra
con un ejemplo: za con Teorema x seguido del enunciado página http://www.linux-magazine.com.
que queremos escribir dentro de este es los listados de este proyecto para que
01 \documentclass[a4paper,12pt] entorno (fijaros en el ejemplo anterior). los tengáis de referencia para vuestros
{article} Pero a veces nos puede gustar más que propios trabajos. ■
02 \usepackage[latin1]{inputenc} el contador de un entorno de este tipo
03 \usepackage[T1]{fontenc} vaya ligado a la sección donde se
04 \usepackage[spanish]{babel} encuentra, con el fin de que, al referen- RECURSOS
05 \begin{document} ciarlo, el lector sepa en qué sección tiene
[1] El libro de LaTeX. B. Cascales y otros. Ed.
06 \newtheorem{teorema}{Teorema} que buscarlo. ¿Cómo se hace? Pues muy Prentice Hall. 2003.
07 fácil, en el ejemplo anterior hemos crea-
[2] LaTeX, a document preparation system. L.
\newtheorem{lema}{Lema}[section] do un entorno con nombre lema y cuyo
Lamport. 2ª Ed. Ed. Addison-Wesley. 1994.
08 \begin{teorema} contador está referenciado a las sec-
[3] “Una Descripción de LaTeX2e”.Tomás
09 Aquí tenemos un teorema\dots ciones (mirad en el ejemplo cómo ha
Bautista. http://www.iuma.ulpgc.es/
10 \end{teorema} resultado). El contador resultante lleva users/bautista/other/tex/ldesc2e/misc/
11 \begin{teorema} en primer lugar el número de la sección ldesc2e.pdf
12 Y aquí otro. actual y separado con un punto el conta-

www.linuxmagazine.com.es Número 03 91