Beruflich Dokumente
Kultur Dokumente
\usepackage[driver]{color}
\usepackage[driver]{xcolor}
133
134 Cap.5 COLORES, CUADROS Y TABLAS
• monochrome: convierte todos los comandos de colores a blanco y negro, se utiliza para
prevenir cuando el sistema no maneja colores y se carga de la forma:
\usepackage[monochrome]{color}
• dvipsnames: toma los nombres de los colores en el modelo named de dvips y lo hace
disponible para otros drivers.
El paquete color provee además de una serie de comandos para diferentes aplicaciones, como
ser:
• \pagecolor: establece el nuevo color de fondo de las páginas, a partir de la aparición del
comando.
• \color: es una declaración para cambiar la especificación del texto a un color dado.
• \colorbox: establece los argumentos para colorear el color de fondo de una caja.
• \fcolorbox: establece los argumentos para colorear el color de fondo de una caja con
borde.
Hoy en día existen muchas formas de representaciones para describir colores, algunos de
los cuales se eligen de acuerdo al objetivo de la aplicación, como el mezclado de colores, teoría
de la percepción de colores, televisión, etc. PostScrip subdivide en los denominados espacios de
colores, en tres categorias:
Por otra parte TEX y LATEX utilizan modelos de color que son soportados por los drivers
de la tarjeta de video; los modelos aceptados son rgb, cmyk, gray, hsb y named, de la forma:
• RGB: El espacio de colores aditivo RGB, permite obtener todos los colores por superposi-
ción (adición) de los tres colores primarios definidos por el CIE como rojo (700nm), verde
(546.1nm) y azul (435.8nm). En este modelo los electrones del TRC (tubo de rayos catódi-
cos) golpean el elemento fósforo de la pantalla y por combinación da el color deseado.
La terna (red,green,blue) genera los restantes colores, donde cada número esta compren-
dido entre 0 y 1, por ejemplo la terna {1,0,0} es rojo. En general los colores pueden ser
definidos por el usuario y posteriormente utilizados en la elaboración de un documento,
esto es posible mediante el comando \definecolor, el mismo incluye parámetros que es-
pecifican su funcionamiento y deben ser colocados en el preámbulo del documento y son
de la forma:
\definecolor{nombre}{rgb}{n1 ,n2 ,n3 }
donde nombre es cualquier palabra elegida por el usuario y los números n1 , n2 y n3 son
valores entre 0 y 1; algunos ejemplos son:
los últimos cuatro ejemplos fueron extraidos de un listado de colores que se encuentra en
una dirección de Internet, el mismo es bastante completo y tiene un total de 134 colores
ordenados por tonalidades y 321 colores ordenados por gama, es el siguiente:
http://ca.wikipedia.org/wiki/Llista_de_colors_HTML.
Asimismo se puede utilizar directamente una instrucción para colorear objetos sin necesi-
dad de definirlo en el preámbulo, este es: \color[rgb]{n1,n2,n3}{objeto}, por ejem-
plo la instrucción \color[rgb]{0.7,0.13,0.13}{{\fbox{color firebrick}}} mues-
tra: color firebrick .
de la misma forma que con el modelo RGB, se puede utilizar directamente una instrucción
para colorear objetos sin necesidad de definirlo en el preámbulo, es decir que al mismo in-
stante en el que se escribe el documento, este es: \color[cmyk]{n1,n2,n3,n4}{objeto},
por ejemplo la instrucción \color[cmyk]{0,0.53,0.38,0}{\fbox{color salmon}} mues-
tra: color salmon .
\definecolor{nombre}{gray}{n}
donde 0 ≤ n ≤ 1, por ejemplo:
\definecolor{negro}{gray}{0} Curso negro
\definecolor{plomoscuro}{gray}{0.25} Curso plomo oscuro
\definecolor{plomo}{gray}{0.5} Curso plomo
\definecolor{aluminio}{gray}{0.75} Curso aluminio
\definecolor{blanco}{blanco}{1} Curso blanco
también como los modelos RGB y CMYK se puede utilizar directamente una instrucción
para colorear objetos mediante: \color[gray]{n}{objeto}, por ejemplo la instrucción
\color[gray]{0.7}{color plomo claro} muestra: color plomo claro .
• HSB: Hue Saturation Brightness, (matiz, saturación y brillo). Es una terna de números
reales entre 0 y 1, separada por comas. Este modelo solo es utilizado y entendido por
algunos sistemas de computacionales.
• named: los colores son especificados por un nombre como blue, red, white, etc.; MiKTeX
reconoce 68 nombres que corresponden a los colores más utilizados; para lo cual se debe
cargar el paquete color de la forma \usepackage[usenames,dvipsnames]{color}, donde
la opción usenames carga todos los colores en la memoria y la opción dvipsnames habilita
el driver para usar con los nombres, por ejemplo Color Rhodamine se puede obtener con
la linea de comando \textcolor{Rhodamine}{Color Rhodamine}. Lo explicado permite
acceder a los colores de forma mucho más fácil, lo que facilita el trabajo del usuario; los
colores y sus nombres se observan en el cuadro 5.1.
Existe dos comandos para escribir cajas de colores, el comando colorbox permite realizar
la caja en colores sin bordes(recuadro) y fcolorbox incluye un borde de caja, los mismos tienen
como sintaxis:
por ejemplo
2 2
∂ 2φ
∇ φ−k =0 {\setlength\fboxrule{2pt}\setlength\fboxsep{7pt}%
∂t2
\fcolorbox{Purple}{Papaya}{\color{BlueGreen}{$\boldsymbol%
{\nabla^2\phi-k^2\frac{\partial^2\phi}{\partial t^2}=0}$}}}
En el último ejemplo ademas de modificar los colores, se ha establecido el grosor del recuadro
a 2pt con la instrucción \setlength\fboxrule y además se ha aumentado el espacio entre el
recuadro y el contenido a 7pt con la instrucción \setlength\fboxsep.
• Soporta un conjunto de colores extendido y para todos los modelos mencionados, para
especificaciones de entrada de colores tales como:
– Notacion de colores en HTML.
– Definición de colores por su longitud de onda, con la opción [wave]. El rango de luz
visible esta entre 400nm y 700nm, por ejemplo el violeta esta entre 400 a 450nm,
450 a 500nm es azul, 500 a 550nm es verde, 550 a 600nm es amarillo, 600 a 650nm es
naranja y 650 a 700nm es rojo; cuando se escribe un valor fuera del rango se dibuja
en color negro, por ejemplo:
\color[wave]{400}{\rule{1.5cm}{12pt}}
\color[wave]{450}{\rule{1.5cm}{12pt}}
\color[wave]{525}{\rule{1.5cm}{12pt}}
\color[wave]{575}{\rule{1.5cm}{12pt}}
\color[wave]{625}{\rule{1.5cm}{12pt}}
\color[wave]{700}{\rule{1.5cm}{12pt}}
\color[wave]{800}{\rule{1.5cm}{12pt}}
140 Cap.5 COLORES, CUADROS Y TABLAS
• Provee la declaración adicional \providecolor que trabaja igual que \definecolor, ex-
cepto que este no sobreescribe un color definido si ya existe, para lo cual usa la declaración
\colorlet que toma el nombre de un color existente y le asigna un nuevo nombre; y es
de la forma:
\providecolor[tipo]{nombre}{modelo}{especificacion de color}
\colorlet{nombre}[nuevo modelo]{color}
LATEX \colorbox{blue}{\textcolor{blue}{\LaTeX}}
LATEX \colorbox{blue!70}{\textcolor{blue!70}{\LaTeX}}
LATEX \colorbox{blue!40}{\textcolor{blue!40}{\LaTeX}}
LATEX \colorbox{blue!10}{\textcolor{blue!10}{\LaTeX}}
Otro ejemplo que incluye el recuadro es
{\setlength\fboxrule{2pt}\setlength\fboxsep{5pt}\fcolorbox{black}%
{magenta!20}{\textcolor{red!90}{\textbf{Aprendiendo}} \textcolor%
{blue!70}{\textbf{\LaTeX}}\textcolor{white}{\textbf{poco a poco}}}}
\color{blue}{\rule{1.5cm}{12pt}}
\color{blue!50}{\rule{1.5cm}{12pt}}
\color{blue!50!red!50}{\rule{1.5cm}{12pt}}
\color{blue!50!black!50}{\rule{1.5cm}{12pt}}
\color{blue!50!green!50}{\rule{1.5cm}{12pt}}
\color{blue!50!green!50!gray!75}{\rule{1.5cm}{12pt}}
Alternativamente el paquete xcolor permite mezclar colores mediante porciones
para lo cual se debe utilizar el modelo de color para especificar la combinación,
los siguientes ejemplos muestran una combinación entre azul y verde, en los tres
primeros casos 1, 2 y 3 porciones; en el ultimo caso se mezcla adicionalmente con
plomo en una porción:
\color{rgb:blue,3;green,1}{\rule{1.5cm}{12pt}}
\color{rgb:blue,2;green,2}{\rule{1.5cm}{12pt}}
\color{rgb:blue,1;green,3}{\rule{1.5cm}{12pt}}
\color{rgb:blue,1;green,1;white,1}{\rule{1.5cm}{12pt}}
– Colores complementarios de colores dados, para los cual se utiliza la instrucción
-color, siendo color el nombre de un color dado; por ejemplo -blue es el color
amarillo y viceversa -yellow es azul. Se muestran algunos ejemplos a continuación:
\color{blue}{\rule{1.5cm}{12pt}}
\colorlet{azulinverso}{-blue}\color{azulinverso}%
{\rule{1.5cm}{12pt}}
\color{blue!50!azulinverso!50}{\rule{1.5cm}{12pt}}
\fbox{\color{blue!99!azulinverso!1}{\rule{1.5cm}{12pt}}}
en el segundo caso como se observa la instrucción \colorlet{azulinverso}{-blue}
para cambiar el nombre del color inverso del azul y luego se ejecuta con ese nombre
el comando; el comando colorlet debe ser aplicado cada vez que se requiera, para
evitar ejecutar este comando cada vez se debe escribir el mismo en el preámbulo
del documento y se comporta como una variable global. En el último ejemplo se ha
aumentado con un comando \fbox para ver el resultado, porque lo que se obtiene
de mezclar un color con su inverso es de color blanco.
• Coloreado alternado de las filas de una tabla usando el paquete colortbl; una de sus apli-
caciones es para generar degradación de tonalidades en las filas o columnas, por ejemplo:
Una diferencia adicional entre los paquetes color y xcolor es que, en el caso de xcolor
requiere que siempre se escriba la opción dvipsnames conjuntamete el cargado del paquete caso
contrario en la compilación del documento muestra color inexistente.
Otro comando para modificar la apariencia del documento es pagecolor, el cual permite cam-
biar el color del fondo de página donde es aplicado, siendo su sintaxis:
\pagecolor{color de fondo}
para retornar al estado normal es necesario volver a aplicar el comando \pagecolor, o alter-
nativamente aplicar el comando para cambiar los colores de página que sean necesarios, por
ejemplo para esta página se ha aplicado \pagecolor{yellow!40!green!20} al finalizar esta
página que proporciona un color de fonde de 40 % de amarillo con 20 % de verde. Cuando el
comando se aplica en el preámbulo del documento, todo el texto adquiere el color seleccionado
por el usuario.
En el léxico de habla inglesa el término table se utiliza para describir tablas, cuadros
(de datos) e inclusive gráficos, en habla castellana se utiliza el término cuadro para hacer
referencia a un arreglo que facilita su descripción y por supuesto puede existir texto y números,
y se utiliza el término tabla para describir un cuadro de números que permite facilitar su
descripción o cálculos. Pese a lo mencionado en habla castellana suele utilizarse el término
tabla como equivalente de cuadro.
APRENDIENDO LATEX - Ing. Edwin Callejas Pinto b 143
Para crear cuadros (tablas) el LATEX tiene fundamentalmente los entornos tabular, tabu-
lar* y array, a partir de los cuales se pueden modificar sus parámetros de construcción con la
ayuda de comandos, entornos y de paquetes que permiten lograr una variedad de presentaciones
de cuadros y tablas; a lo largo de este capítulo se mostraran algunas posibilidades. Entre los
paquetes más conocidos están: hhline, array, colortbl, supertabular, longtable, xtabular
y tabulary, de los cuales se comentaran en el texto algunos de ellos.
Los entornos tabular y tabular* tienen la siguiente sintaxis:
\begin{tabular}[pos]{formato-col} \begin{tabular*}{width}[pos]{formato-col}
... & ... & ...\\ ... & ... & ...\\
... & ... & ...\\ ... & ... & ...\\
... & ... & ...\\ ... & ... & ...\\
\end{tabular} \end{tabular*}
\cline{m-n}: este comando dibuja una linea horizontal desde la columna m hasta la
columna n.
|\vline: este comando dibuja ua linea vertical igual a la altura de la fila y en el lugar
donde aparece.
\multicolumn{num}{col}{text}: este comando se utiliza para combinar columnas.
Por ejemplo {lcccr} indica que es una tabla con 5 columnas, la primera esta alineada a la
izquierda, las tres siguientes están centradas y la última está alineada a la derecha; {llc} indica
que las columnas 1 y 2 estan alineadas a la izquierda y la tercera esta centrada, como en el
ejemplo de tabla completa que se muestra a continuación acompañado del código que lo genera:
\begin{tabular}{llc}
NOMBRE & CARRERA & C.I. \\
Alanes Javier & Ing. Civil & 1234567 \\
Barrios Jorge & Ing. Petrolera & 7654321 \\
Pe\~na Miguel & Ing. Química & 4321567 \\
Zabala Daniel & Ing. Electr\’onica & 4567123 \\
\end{tabular}
Para dibujar las líneas horizontales de la tabla se debe agregar el comando \hline al finalizar
la fila (renglón) donde se requiere la línea; si se ingresa el comando dos veces \hline\hline
escribe una tabla con doble línea al finalizar el renglón.
\begin{tabular}{llc} \hline
NOMBRE & CARRERA & C.I. \\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 \\
Barrios Jorge & Ing. Petrolera & 7654321 \\
Peña Miguel & Ing. Química & 4321567 \\
Zabala Daniel & Ing. Electr\’onica & 4567123 \\ \hline
\end{tabular}
APRENDIENDO LATEX - Ing. Edwin Callejas Pinto b 145
Con el entorno anterior el ancho de la tabla queda predefinido por su contenido, para
tener un ancho definido por el usuario se utiliza el entorno tabular*, el ejemplo anterior con
una ancho de 10cm será
\begin{tabular*}{10cm}{llc} \hline
NOMBRE & CARRERA & C.I. \\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 \\
Barrios Jorge & Ing. Petrolera & 7654321 \\
Peña Miguel & Ing. Química & 4321567 \\
Zabala Daniel & Ing. Electr\’onica & 4567123 \\ \hline
\end{tabular*}
Para que aparezca las líneas verticales se debe incorporar | en el formato, es decir de
la forma {|l|lc|}, puesto que no aparece la barra entre la segunda y tercera columna no se
dibujará la línea vertical, por ejemplo
\begin{tabular}{|l|lc|} \hline
NOMBRE & CARRERA & C.I. \\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 \\
Barrios Jorge & Ing. Petrolera & 7654321 \\
Peña Miguel & Ing. Química & 4321567 \\
Zabala Daniel & Ing. Electr\’onica & 4567123 \\ \hline
\end{tabular}
el siguiente ejemplo tiene el siguiente formato {||l|l|c||}, es posible incorporar dos líneas
verticales, y además se ha escrito el comando \hline al finalizar cada fila
\begin{tabular}{||l|l|c||} \hline\hline
NOMBRE & CARRERA & C.I. \\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 \\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 \\ \hline
Peña Miguel & Ing. Química & 4321567 \\ \hline
Zabala Daniel & Ing. Electr\’onica & 4567123 \\ \hline\hline
\end{tabular}
Tal como se ha observado en los anteriores ejemplos el entorno tabular permite construir
cuadros o tablas, si en el documento que se realiza no hubiese espacio para la tabla, el compilador
envía la misma a la siguiente página, otro aspecto es que con el anterior entorno se debe
incorporar manualmente el nombre y número de la tabla.
El LATEX tiene el entorno table para resolver las dos situaciones mencionadas pero el
mismo no permite construir directamente la tabla, por lo que para construir una con el entorno
table se debe escribir dentro el entorno tabular. La forma del entorno es:
\begin{table}[posición]
\begin{tabular}{formato}
........&......&.................\\
........&......&.................\\
\end{tabular}\caption{...........}
\end{table}
donde posición especifica donde será puesta la tabla respecto a la página y al texto circundante;
lo mencionado ocurre porque el compilador maneja la tabla como un objeto flotante y por lo
tanto debe ser puesto en algún lugar de la página. Los parámetros que acepta son:
Por otra parte la numeración de las tablas se realiza automáticamente por el compilador con el
contador table, la numeración es de la forma Cuadro 5.1: en castellano (con el paquete babel);
el primer número establece el capítulo y el segundo el número de la tabla, el cual se incremeta
de acuerdo al orden de aparición de las tablas. Para que el número de la tabla aparezca se utiliza
el comando \caption lo que además permite incorporar su rótulo ó epígrafe (descripción de la
tabla) y esta se escribe al finalizar el entorno tabular. Por ejemplo:
\begin{table}[!ht]
\centering
\begin{tabular}{|l|l|c|} \hline
NOMBRE & CARRERA & C.I. \\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 \\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 \\ \hline
Peña Miguel & Ing. Química & 4321567 \\ \hline
Zabala Daniel & Ing. Electr\’onica & 4567123 \\ \hline
\end{tabular}\caption{Ejemplo de tabla con su r\’otulo.}
\end{table}
Los formatos mencionados en la anterior sección muestran la forma de construir una tabla
que incorpore lineas verticales y horizontales que dividen sus elementos en celdas, sin embargo
ciertas tablas requieren que las lineas verticales u horizontales de la tabla solamente incluya
a algunas columnas o filas. En el caso del procesador de texto Word esto se puede hacer con
la opción combinar celdas, en el caso de LATEX esto puede ser realizado con los comandos
\cline y \vline de acuerdo a:
\begin{table}[!ht]
\centering
\begin{tabular}{|l|l|c|} \hline
NOMBRE & CARRERA & C.I. \\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 \\ \cline{1-2}
Barrios Jorge & Ing. Petrolera & 7654321 \\ \cline{2-3}
Peña Miguel & Ing. Quimica & 4321567 \\ \cline{1-1}\cline{3-3}
Zabala Daniel & Ing. Electr\’onica & 4567123 \\ \hline
\end{tabular}\caption{Ejemplo con el comando {\tt \bs cline}.}
\end{table}
• El comando \vline permite incorporar líneas verticales adicionales a las establecidas por
| al principio de la tabla. La impresión del resultado es que se ha realizado combinación
de celdas horizontales. Por ejemplo:
APRENDIENDO LATEX - Ing. Edwin Callejas Pinto b 149
\begin{table}[!ht]
\centering
\begin{tabular}{|l|l|c|} \hline
NOMBRE & CARRERA & C.I. \\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 \vline \, LP\\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 PT \\ \hline
Peña Miguel & Ing. Química & 4321567 \vline \, SC\\ \hline
Zabala Daniel & Ing. Electr\’onica & 4567123 OR\\ \hline
\end{tabular}\caption{Ejemplo con el comando {\tt \bs vline}.}
\end{table}
Lo explicado en las anteriores secciones son utiles para tablas con una sola línea en las
filas, cuando se requiere incorporar párrafos de texto, en el {formato} se debe incorporar el
comando p{ancho} y toda la columna queda definida como párrafo. El ejemplo anterior se le
ha complementado con una columna denominada observaciones:
\begin{table}[!ht]
\centering
\begin{tabular}{|l|l|c|p{6cm}|} \hline
NOMBRE & CARRERA & C.I. & OBSERVACIONES\\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 LP & El estudiante es distraido, no
cumple con sus labores acad\’emicas, es necesario indagar
el porqu\’e de su bajo rendimiento.\\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 PT & Cumple con sus obligaciones
acad\’emicas regularmente.\\ \hline
Peña Miguel & Ing. Química & 4321567 SC & Cumple con sus obligaciones
normalmente, sin embargo la \’ultima semana no asisti\’o.\\\hline
Zabala Daniel & Ing. Electr\’onica & 4567123 OR & Abandon\’o el curso.\\\hline
\end{tabular}\caption{Ejemplo de tabla con p\’arrafo de texto}
\end{table}
• El comando \arraystrech, se utiliza para tener control sobre el espaciado entre filas, por
ejemplo en el caso anterior con una separación 1.5 permite obtener la tabla subsiguiente:
\begin{table}[!ht]
\centering
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{|l|l|c|p{6cm}|} \hline
NOMBRE & CARRERA & C.I. & OBSERVACIONES\\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 LP & El estudiante es distraido,
no cumple con sus labores acad\’emicas, es necesario
indagar el porqu\’e de su bajo rendimiento.\\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 PT & Cumple con sus
obligaciones acad\’emicas regularmente.\\ \hline
Peña Miguel & Ing. Química & 4321567 SC & Cumple con sus
obligaciones normalmente, sin embargo la \’ultima
semana no asisti\’o. \\ \hline
Zabala Daniel & Ing. Electr\’onica & 4567123 OR & Abandon\’o
el curso.\\\hline
\end{tabular}\caption{Ejemplo de tabla con p\’arrafo de texto}
\end{table}
• El comando tabcolsep permite tener control sobre el espaciado entre columnas que por
defecto es aproximadamente 2mm; el ejemplo anterior con un espaciado de 5mm es:
\begin{table}[!ht]
\centering
\renewcommand{\tabcolsep}{5mm}
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{|l|l|c|p{6cm}|} \hline
NOMBRE & CARRERA & C.I. & OBSERVACIONES\\ \hline \hline
152 Cap.5 COLORES, CUADROS Y TABLAS
Alanes Javier & Ing. Civil & 1234567 LP & El estudiante es distraido,
no cumple con sus labores acad\’emicas, es necesario indagar
el porqu\’e de su bajo rendimiento.\\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 PT & Cumple con sus obligaciones
acad\’emicas regularmente.\\ \hline
Peña Miguel & Ing. Química & 4321567 SC & Cumple con sus obligaciones
normalmente, sin embargo la \’ultima semana no asisti\’o. \\ \hline
Zabala Daniel & Ing. Electr\’onica & 4567123 OR & Abandon\’o el curso.\\\hline
\end{tabular}\caption{Ejemplo de tabla con el comando {\tt tabcolsep}.}
\end{table}
\begin{table}[!ht]
\centering
\renewcommand{\tabcolsep}{5mm}
\renewcommand{\arraystretch}{1.5}
\renewcommand{\arrayrulewidth}{2pt}
\begin{tabular}{|l|l|c|p{6cm}|} \hline
NOMBRE & CARRERA & C.I. & OBSERVACIONES\\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 LP & El estudiante es distraido,
no cumple con sus labores acad\’emicas, es necesario indagar
el porqu\’e de su bajo rendimiento.\\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 PT & Cumple con sus obligaciones
APRENDIENDO LATEX - Ing. Edwin Callejas Pinto b 153
Otra forma de combinar las celdas de una fila es con el comando \multicolumn, el
mismo permite modificar el aspecto de la tabla de acuerdo a las necesidades o requerimientos;
su sintaxis es:
donde:
este comando puede ser aplicado a cualquier fila de acuerdo a los requerimientos, por ejemplo
el siguiente código muestra la aplicación a la primera y cuarta fila, posteriormente se observa
el resultado:
\begin{table}[!ht]
\renewcommand{\tabcolsep}{0.5cm}
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{|l|l|c|p{6cm}|} \hline
\multicolumn{4}{|c|}{\textbf{LISTA DE ESTUDIANTES DE FISICA}} \\ \hline \hline %
NOMBRE & CARRERA & C.I. & OBSERVACIONES\\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 & El estudiante es distraido, no cumple
con sus labores acad\’emicas, es necesario indagar el porqu\’e de
su bajo rendimiento.\\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 & Cumple con sus obligaciones
acad\’emicas regularmente.\\ \hline
\multicolumn{4}{|l|}{ESTUDIANTES EN OBSERVACI\’ON} \\ \hline %
Peña Miguel & Ing. Química & 4321567 & Cumple con sus obligaciones normalmente,
sin embargo la \’ultima semana no asisti\’o. \\ \hline
Zabala Daniel & Ing. Electr\’onica & 4567123 & Abandon\’o el curso. \\ \hline
\end{tabular}\caption{Ejemplo1 de tabla con el comando {\tt multicolumn}.}
\end{table}
154 Cap.5 COLORES, CUADROS Y TABLAS
Modificando el formato se puede utilizar el comando para ingresar el titulo de la tabla; por
ejemplo con tipo de letra URG Grotesk se tiene:
\begin{table}[!ht]
\renewcommand{\tabcolsep}{0.5cm}
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{|l|l|c|p{6cm}|} \hline
\multicolumn{4}{c}{\fontfamily{ugq}\selectfont Tabla 1: LISTA DE ESTUDIANTES
DE FISICA} \\ \hline
NOMBRE & CARRERA & C.I. & OBSERVACIONES\\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 & El estudiante es distraido, no cumple
con sus labores acad\’emicas, es necesario indagar el porqu\’e de
su bajo rendimiento.\\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 & Cumple con sus obligaciones
acad\’emicas regularmente.\\ \hline
Peña Miguel & Ing. Química & 4321567 & Cumple con sus obligaciones normalmente,
sin embargo la \’ultima semana no asisti\’o. \\ \hline
Zabala Daniel & Ing. Electr\’onica & 4567123 & Abandon\’o el curso. \\ \hline
\end{tabular}\caption{Ejemplo2 de tabla con el comando {\tt multicolumn}.}
\end{table}
Otro ejemplo de aplicación del comando multicolumn es para generar tablas incompletas,
por ejemplo la siguiente:
\begin{table}[!ht]
\centering
\renewcommand{\tabcolsep}{0.5cm}
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{c|l|l|c|} \cline{2-4}
& NOMBRE & CARRERA & C.I. \\ \hline \hline
\multicolumn{1}{|c|}{1ro} & Alanes Javier & Ing. Civil & 1234567 \\\hline
\multicolumn{1}{|c|}{2do} & Barrios Jorge & Ing. Petrolera & 7654321 \\\hline
\multicolumn{1}{|c|}{3ro} & Peña Miguel & Ing. Química & 4321567 \\\hline
\multicolumn{1}{|c|}{4to} & Zabala Daniel & Ing. Electr\’onica & 4567123 \\\hline
\end{tabular}\caption{Ejemplo3 de tabla con multicolumn.}
\end{table}
156 Cap.5 COLORES, CUADROS Y TABLAS
5.2.6. @-expresiones
Cuando se requiere modificar algo de las columnas de una tabla se utiliza la denomina-
da @-expresión, una vez que es aplicada parece en todas las finas de la columna repectiva,
esta modificación se realiza en formato de la tabla. Por ejemplo si se modifica el formato del
cuadro 5.6 incluyendo espacio de 15pt en la primera columna y símbolos en la cuarta se obtiene:
\begin{table}[!ht]
\centering
\begin{tabular}{|@{\hspace{15pt}}l|l|c|@{\;$\checkmark$\quad}p{6cm}|} \hline
NOMBRE & CARRERA & C.I. & OBSERVACIONES\\ \hline \hline
Alanes Javier & Ing. Civil & 1234567 LP & El estudiante es distraido,
no cumple con sus labores acad\’emicas, es necesario indagar
el porqu\’e de su bajo rendimiento.\\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 PT & Cumple con sus obligaciones
acad\’emicas regularmente.\\ \hline
Peña Miguel & Ing. Química & 4321567 SC & Cumple con sus obligaciones
normalmente, sin embargo la \’ultima semana no asisti\’o. \\ \hline
Zabala Daniel & Ing. Electr\’onica & 4567123 OR & Abandon\’o el curso.\\\hline
\end{tabular}\caption{Ejemplo con @-expresi\’on.}
\end{table}
• vmove: se usa para fijar desplazamientos verticales, por defecto aparece centrado.
\begin{table}[!ht]
\centering
\renewcommand{\arraystretch}{1.2}
\begin{tabular}{|c|l|} \hline
\multirow{4}{5cm}{Facultad de Ingeniería}
& Carrera de Ing. Electr\’onica \\ \cline{2-2}
& Carrera de Ing. Civil \\ \cline{2-2}
& Carrera de Ing. Industrial \\ \cline{2-2}
& Carrera de Ing. Petrolera \\ \hline
\multirow{3}{5cm}[-3mm]{Facultad de Economía}
& Carrera de Economia \\ \cline{2-2}
& Carrera de Adm. de Empresas \\ \cline{2-2}
& Carrera de Auditoria\\ \hline
\multirow{3}{5cm}[3mm]{Facultad de Ciencias de la Salud}
& Carrera de Medicina \\ \cline{2-2}
158 Cap.5 COLORES, CUADROS Y TABLAS
El paquete array permite incrementar algunas de las capacidades del entorno tabular,
ademas de las opciones de columna l, r, c, p{...}, incluye las opciones:
b{ancho}: el texto de las columnas vecinas parece alineado por la parte inferior.
Como ejemplo se realiza la modificación del cuadro 5.11, para lo cual en las columas 1 y 2 se
cambia el tipo de fuente a italic y small caps respectivamente, en la columna 3 se ha colocado
un X al finalizar el texto y en columna 4 se ha aplicado m{5.5cm} lo que implica que sera de
5.5cm de ancho y que el resto de las columnas estará centrada verticalmente, es decir:
El estudiante es distraido,
no cumple con sus labores
Alanes Javier Ing. Civil 1234567X académicas, es necesario inda-
gar el porqué de su bajo
rendimiento.
\begin{table}[!ht]
\centering
\renewcommand{\tabcolsep}{0.5cm}
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{|>{\it}l|>{\sc}l|c<{$\checkmark$}|m{5.5cm}|}
\multicolumn{4}{c}{\fontfamily{ugq}\selectfont Tabla 1: LISTA DE
ESTUDIANTES DE FISICA} \\ \hline
{\rm\bf NOMBRE} & {\bf CARRERA} & {\bf C.I.} & {\bf OBSERVACIONES}\\\hline\hline
Alanes Javier & Ing. Civil & 1234567 & El estudiante es distraido,
no cumple con sus labores acad\’emicas, es necesario indagar
el porqu\’e de su bajo rendimiento.\\ \hline
Barrios Jorge & Ing. Petrolera & 7654321 & Cumple con sus obligaciones
acad\’emicas regularmente.\\ \hline
Peña Miguel & Ing. Química & 4321567 & Cumple con sus obligaciones
normalmente, sin embargo la \’ultima semana no asisti\’o. \\ \hline
Zabala Daniel & Ing. Electr\’onica & 4567123 & Abandon\’o el curso. \\\hline
\end{tabular}\caption{Ejemplo con paquete array.}
\end{table}
las versiones con asterisco (*) son de la misma forma que el entorno tabular* para tablas de
ancho definido, el entorno mpsupertabular permite incorporar pie de página para referencias de
la tabla. Los entornos mencionados utilizan internamente el entorno tabular, con la salvedad de
que, se evalua el espacio usado cada vez que encuentra \\. Una vez que la cantidad alcanza el
valor de \textheight el paquete automaticamente inserta un comando \end{tabular} e inicia
una nueva página insertando la cabecera para continuar con la tabla, esto significa que el largo
de la tabla se construye en las páginas que sean necesarias.
160 Cap.5 COLORES, CUADROS Y TABLAS
• \tabletail: define el contenido de lo que puede ser insertado antes de cada \end{tabular},
excepto el último.
• \tablecaption: se utiliza para el nombre de la tabla en el lugar por defecto (parte superior
de la tabla).
• \shrinkheight: ajusta el valor del tamaño máximo de la tabla que puede caber en una
página. Con un valor positivo contrae la tabla y con un valor negativo expande la tabla.
N N2 N3 N!
1 1 1 1
2 4 8 2
3 9 27 6
4 16 64 24
5 25 125 120
6 36 216 720
7 49 343 5040
8 64 512 40320
9 81 729 362880
10 100 1000 3628800
11 121 1331 39916800
12 144 1728 479001600
13 169 2197 6227020800
14 196 2744 87178291200
15 225 3375 1,30767E+12
16 256 4096 2,09228E+13
continua en la siguiente página
APRENDIENDO LATEX - Ing. Edwin Callejas Pinto b 161
N N2 N3 N!
17 289 4913 3,55687E+14
18 324 5832 6,40237E+15
19 361 6859 1,21645E+17
20 400 8000 2,4329E+18
21 441 9261 5,10909E+19
22 484 10648 1,124E+21
23 529 12167 2,5852E+22
24 576 13824 6,20448E+23
25 625 15625 1,55112E+25
26 676 17576 4,03291E+26
27 729 19683 1,08889E+28
28 784 21952 3,04888E+29
29 841 24389 8,84176E+30
30 900 27000 2,65253E+32
31 961 29791 8,22284E+33
32 1024 32768 2,63131E+35
33 1089 35937 8,68332E+36
34 1156 39304 2,95233E+38
35 1225 42875 1,03331E+40
36 1296 46656 3,71993E+41
37 1369 50653 1,37638E+43
38 1444 54872 5,23023E+44
39 1521 59319 2,03979E+46
40 1600 64000 8,15915E+47
\begin{center}
\tablehead{\hline
$N$ & $N^2$ & $N^3$ & $N!$ \\ \hline\hline }
\tabletail{\hline%
\multicolumn{4}{r}{\small\it continua en la siguiente p\’agina}\\}
\tablelasttail{\hline}
\bottomcaption{Ejemplo de tabla con {\it supertabular}}
\renewcommand{\tabcolsep}{1cm}
\renewcommand{\arraystretch}{1.2}
\begin{supertabular}{|r|r|r|c|}
1 & 1 & 1 & 1 \\
2 & 4 & 8 & 2 \\
162 Cap.5 COLORES, CUADROS Y TABLAS
El paquete hhline introduce el comando \hhline con el cual es posible producir lineas
verticales y horizontales simples o dobles, con la capacidad adicional de producir intersecciones
entre lineas verticales y horizontales bien construidas. En general el comando es de la forma:
\hhline{declaración}
• Los elementos anteriores se utilizan agrupados para definir entrelazamientos con las líneas
verticales, por ejemplo:
\begin{table}[!ht]
\setlength\arrayrulewidth{0.8pt}
\renewcommand\arraystretch{1.5}
\begin{tabular}{||cc||c||} \hhline{|t:==:t:=:t|}
a & b & c \\ \hhline{||~~||}
d & e & f \\ \hhline{|:==::=:|}
g & h & i \\ \hhline{|b:==:b:=:b|}
\end{tabular}
\end{table}
\begin{wraptable}[N-lines]{placement}[overhang]{width}
\begin{tabular}{*|*|*}
....&.......&..........
....&........&.........
\end{tabular}\caption{..............}
\end{wraptable}
Como ejemplo se puede observar el resultado de aplicar este entorno a la tabla inicial de la
presente página, para lo cual se ha aplicado lo siguiente:
\begin{tabwindow}[2,c,{\renewcommand\tabcolsep{0.5cm}%
\renewcommand\arraystretch{1.2}%
\begin{tabular}[b]{|c|c|c|}\hline%
columna1 & columna2 & columna3 \\\hline
a & b & c \\\hline
d & e & f \\\hline
\end{tabular}},{\footnotesize Ejemplo con tabwindow}]
Tal como se ha visto en la secci\’on~\ref{paquete picinpar}, el paquete
{\bf picinpar} permite ventanear \linebreak objetos dentro de p\’arrafos
de texto, siendo el entorno b\’asico ........
\end{tabwindow}
El paquete colortbl es utilizado para colorear las tablas completas o solamente columnas,
filas y/o celdas de manera independiente; para usar el mismo debe realizarse conjuntamente
con el paquete color(xcolor) y array; los comandos utilizados son:
\begin{tabular}{|r|c|l|}
\rowcolor{red} \textcolor{white}{Matemáticas} & \textcolor{white}{70}
& \textcolor{white}{Aprobado} \\
\rowcolor{yellow} Física & 30 & Reprobado \\
\rowcolor{green} Química & -- & Abandonó
\end{tabular}
Matemáticas 70 Aprobado
Física 30 Reprobado
Química – Abandonó
\setlength\arrayrulewidth{2pt}\arrayrulecolor{blue}
\setlength\doublerulesep{2pt}\doublerulesepcolor{cyan}
APRENDIENDO LATEX - Ing. Edwin Callejas Pinto b 167
\begin{tabular}{||r||c||l||}\hline\hline
\rowcolor{red} \textcolor{white}{Matemáticas} & \textcolor{white}{70} &
\textcolor{white}{Aprobado}\\\hline
\rowcolor{yellow} Física & 30 & Reprobado \\ \hline
\rowcolor{green} Química & -- & Abandonó \\ \hline\hline
\end{tabular}
Matemáticas 70 Aprobado
Física 30 Reprobado
Química – Abandonó
5.3. Formularios
Los formularios son ciertos cuadros (o tablas) en formatos estandares construidos para
cumplir alguna función determinada como los formularios de inscripciones o un curriculum
vitae; en el entorno LATEX se denominan plantillas. Como por ejemplo el cuadro 5.20 muestra
el resultado del siguiente codigo:
\begin{quote}
\begin{verbatim}
\begin{table}[!ht]
\renewcommand{\tabcolsep}{0.5cm}
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{|l|p{5.5cm}|p{5.5cm}|}
\multicolumn{3}{c}{\fontfamily{ugq}\selectfont\large CURRICULUM VITAE} \\
\multicolumn{3}{c}{} \\
\multicolumn{3}{l}{\bf 1.- DATOS PERSONALES} \\ \hline
\multirow{6}{3cm}{FOTO}
& Nombre & Domicilio\\
& & \\ \cline{2-3}
& Fecha de Nacimiento & Lugar de Nacimiento\\
& & \\ \cline{2-3}
& Telefono Domicilio & Celular \\
& & \\ \hline
C.I. & Tel/Fax & e-mail\\
& & \\ \hline
\multicolumn{3}{c}{} \\
\multicolumn{3}{l}{\bf 2.- ESTUDIOS REALIZADOS} \\ \hline
NIVEL DE & INSTITUCI\’ON Y LUGAR & TITULOS O GRADOS\\
EDUCACION & & \\ \hline
& & \\ \hline
168 Cap.5 COLORES, CUADROS Y TABLAS
CURRICULUM VITAE
El paquete schedule prové de una simple interface para crear cuadros que desplie-
gan actividades semanales, puede denominarse en habla castellana el horario; las activi-
dades son programadas a requerimiento del usuario, por supuesto se debe cargar el paquete
\usepackage{schedule} en el preámbulo del documento, requiere que previamente se carge los
paquetes calc y color. Básicamente trabaja con el entorno schedule, conjuntamente con los
comandos:
• \CellHeight{alto}: indica el alto de cada celda (en unidades estandares de LATEX ), los
cuales corresponden a las horas del listado.
Una desventaja es que los nombres de los dias aparece en lengua inglesa, el paquete babel no
afecta a los nombres deplegados, por ejemplo:
SEMESTRE I/2011
Monday Tuesday Wednesday Thursday Friday
8:00 am Calculo I Química I Química I Calculo I
8:15 am
MAT 101 QMC 100 QMC 100 MAT 101
8:30 am
8:45 am
9:00 am
9:15 am
9:30 am
9:45 am
Algebra I Lab. Física I Algebra I Lab. Química I
10:00 am MAT 100 LFIS 100 MAT 100 LQMC 100
10:15 am
10:30 am
10:45 am
11:00 am
11:15 am
11:30 am
Física I Física I
11:45 am
FIS 100 FIS 100
12:00 am
12:15 am
12:30 am
12:45 am
1:00 pm
\CellHeight{1.2cm}
\CellWidth{2.5cm}
\TimeRange{8:00-13:00}
\SubUnits{15}
\BeginOn{Monday}
\TextSize{\tiny}
\FiveDay
\NewAppointment{labfis}{red}{white}
\NewAppointment{labqmc}{green}{blue}
\begin{schedule}[SEMESTRE I/2011]
\class{Calculo I}{MAT 101}{M,F}{8:00-9:30}
\class{Algebra I}{MAT 100}{M,W}{9:45-11:15}
\class{Física I}{FIS 100}{M,W}{11:30-13:00}
\class{Química I}{QMC 100}{T,Th}{8:00-9:30}
\labfis{Lab. Física I}{LFIS 100}{T}{9:45-12:45}
\labqmc{Lab. Química I}{LQMC 100}{F}{9:45-12:45}
\end{schedule}