Blog sobre educación

Encabezados y pies de la clase ‘exam’ en \(\LaTeX\)

En el artículo anterior titulado Exámenes con la clase ‘exam’ en \(\LaTeX\) hablamos del tipo de documento exam, aunque dejamos para otro momento el tema de los encabezados y pies, por lo que le dedicamos ahora este espacio.

Los documentos de la clase exam disponen de un sistema de gestión de encabezados y pies muy completo y que no tiene nada que envidiar a otros paquetes dedicados en exclusiva a este tema.

Encabezados y pies que afectan a todo el documento

Tanto en los encabezados como en el pie podemos poner texto en la parte izquierda, central o derecha.

Si deseamos el mismo encabezado para todo el documento pondremos:

\header{Texto izquierda}{Texto centro}{Texto derecha}

Podemos dejar cualquiera de las tres llaves vacías. Además, de forma alternativa podremos utilizar estas instrucciones que ponemos a continuación, que hacen exactamente lo mismo aunque tratando por separado los tres espacios izquierdo, central y derecho:

  • \lhead{Texto izquierdo}
  • \chead{Texto central}
  • \rhead{Texto derecho}

Exactamente lo mismo se aplica al pie con:

\footer{Texto izquierda}{Texto centro}{Texto derecha}

y

  • \lfoot{Texto izquierdo}
  • \cfoot{Texto central}
  • \rfoot{Texto derecho}

Si queremos una línea horizontal bajo el encabezado pondremos \headrule y en el pie \footrule.

Veamos un ejemplo:

\documentclass[11pt,a4paper,addpoints]{exam}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[spanish]{babel}
\usepackage[left=2.00cm, right=2.00cm, top=2.00cm, bottom=2.00cm]{geometry}

\begin{document}

\header{Agosto de 2020}{}{Bachillerato}
\footer{Tema 1}{Página\ \thepage\ de \numpages}{Encabezados y pies}
\headrule
\footrule

 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque sit amet risus ac turpis condimentum tincidunt. Ut scelerisque dolor ac purus aliquam, quis tincidunt metus ultricies. Sed velit augue, ullamcorper sed laoreet sit amet, ultrices eget felis.
\newpage
 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque sit amet risus ac turpis condimentum tincidunt. Ut scelerisque dolor ac purus aliquam, quis tincidunt metus ultricies. Sed velit augue, ullamcorper sed laoreet sit amet, ultrices eget felis.
\end{document}

El encabezado se ve así:

Encabezado, la parte central se dejó vacía.

Y el pie:

El número de página se consigue con \thepage y el número total con \numpages, esto último requiere una doble compilación para que las cuente correctamente.

Encabezados y pies de la primera página y del resto

Podemos diferenciar la primera página del resto de páginas. Para poner encabezados y pies en la primera página usaremos:

  • \firstpageheader{Izquierda}{Centro}{Derecha} para el encabezado de la primera página.
  • \firstpagefooter{Izquierda}{Centro}{Derecha} para el pie de la primera página.

Para el resto de las páginas, es decir, a partir de la segunda:

  • \runningheader{Izquierda}{Centro}{Derecha} para el encabezado de las páginas siguientes a la primera.
  • \runningfooter{Izquierda}{Centro}{Derecha} para el pie de las páginas siguientes a la primera.

Una forma alternativa de indicar esto mismo es indicar entre corchetes el contenido de la primera página y entre llaves el de las siguientes:

EncabezadosPies
Izquierda\lhead[Pag1]{Siguientes}\lfoot[Pag1]{Siguientes}
Centro\chead[Pag1]{Siguientes}\cfoot[Pag1]{Siguientes}
Derecha\rhead[Pag1]{Siguientes}\rfoot[Pag1]{Siguientes}
Asignación de encabezados y pies a la primera página o a las siguientes en diferentes posiciones.

Por ejemplo, para poner el texto: «Examen» en la parte izquierda del encabezado de la primera página y «Nombre:» en la misma posición del resto de páginas pondríamos: \lhead[Examen]{Nombre:}

Líneas horizontales

Para obtener líneas de separación de los encabezados y pies podemos usar lo siguiente:

InstrucciónEfecto
\headruleEncabezados: Líneas en todas las páginas
\footrulePies: Líneas en todas las páginas
\firstpageheadruleEncabezados: Línea en la primera página
\firstpagefootrulePies: Línea en la primera página
\runningheadruleEncabezados: Líneas a partir de la segunda página
\runningfootrulePies: Líneas a partir de la segunda página

Ejemplo

Veamos un ejemplo donde mezclamos un poco de todo lo anterior.

\documentclass[11pt,a4paper,addpoints]{exam}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[spanish]{babel}
\usepackage[left=2.00cm, right=2.00cm, top=2.00cm, bottom=2.00cm]{geometry}

\begin{document}

\lhead[Lorem ipsum]{Agosto 2020}
\chead[2020]{Lorem ipsum}
\rhead[]{Encabezados}
\runningfooter{Tema 1}{Página\ \thepage\ de \numpages}{Encabezados y pies}
\headrule
\runningfootrule

 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque sit amet risus ac turpis condimentum tincidunt. Ut scelerisque dolor ac purus aliquam, quis tincidunt metus ultricies. Sed velit augue, ullamcorper sed laoreet sit amet, ultrices eget felis.
\newpage
 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque sit amet risus ac turpis condimentum tincidunt. Ut scelerisque dolor ac purus aliquam, quis tincidunt metus ultricies. Sed velit augue, ullamcorper sed laoreet sit amet, ultrices eget felis.
\end{document}
Encabezado de la primera página. No se ha definido ningún tipo de pie para esta página.
Encabezado de la segunda página y siguientes.
Pie de página de la segunda página y siguientes.

Páginas pares e impares

Muchas veces es útil diferenciar las páginas pares de las impares. Esto se puede hacer con la orden \oddeven{Texto si página impar}{Texto si página par}. Introduciendo esta instrucción en un encabezado o pie podemos hacer que se imprima un texto u otro según la página en la que estemos sea impar o par. Esta instrucción solo funciona correctamente en los encabezados y pies.

Veamos un ejemplo donde no se imprime encabezado en la primera página y en las impares se pide el nombre del alumno, mientras que en las pares se escribe el nombre del examen.

\documentclass[11pt,a4paper,addpoints]{exam}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[spanish]{babel}
\usepackage[left=2.00cm, right=2.00cm, top=2.00cm, bottom=2.00cm]{geometry}

\begin{document}

\lhead[]{ \oddeven{Nombre:}{Examen de Biología}}

\runningheadrule 

Texto página 1
\newpage
Texto página 2
\newpage
Texto página 3
\newpage
Texto página 4

\end{document}

Diferenciar la última página

De forma similar a la instrucción anterior existe \iflastpage que permite escribir texto específico en el encabezado y pie de la última página. El funcionamiento es el siguiente: \iflastpage{texto si es la última}{texto si no lo es}. El siguiente ejemplo imprime el número de páginas en el pie de todas las páginas excepto en la ultima donde imprime «Fin del examen»:

\cfoot{\iflastpage{Fin del examen}{Página\ \thepage\ de\ \numpages}}
\footrule
Pie de una de las páginas que no es la última.
Pie de la última página.

Encabezados y pies multilínea

Para que el texto de un encabezado o pie ocupe más de una línea bastará con añadir una doble barra invertida para crear un salto de línea: \\. Si necesitamos más espacio usaremos las instrucciones:

  • \extraheadheight{xcm} Espacio extra para el encabezado.
  • \extrafootheight{xcm} Espacio extra para el pie.

Veamos un ejemplo con un encabezado con dos líneas en todas las páginas al que damos un espacio extra de 0.25cm.

\documentclass[11pt,a4paper,addpoints]{exam}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[spanish]{babel}
\usepackage[left=2.00cm, right=2.00cm, top=2.00cm, bottom=2.00cm]{geometry}

\begin{document}

\extraheadheight{0.25cm}
\header{}{La célula\\Examen de Ciencias Naturales}{}
\headrule

Texto

\end{document}
Encabezado con dos líneas, se consigue poniendo: \\

Numeración de las páginas

Podemos poner el número de página en cualquier lugar de los encabezados y pies escribiendo \thepage. El número total de páginas se consigue con \numpages. Si utilizamos esta última instrucción será necesario hacer una doble compilación para que se calcule correctamente el número de páginas.

Aunque en la documentación oficial no habla de esto, se ha visto que si escribimos: Página \thepage de \numpages en lugar de obtener algo así como «Página 3 de 5» se obtiene «Página3de5», sin espacios, por lo que hay que forzar los espacios con la barra invertida: \ , es decir: Página\ \thepage\ de\ \numpages.

¿Algo más sobre encabezados y pies?

Sí, todavía quedan los comandos que detectan si una pregunta continúa desde la página anterior y quizás deseamos indicarlo en el encabezado (o pie) con algo así como «Continuación de la pregunta 7». No obstante, esto lo dejamos para otra ocasión, si deseas averiguar cómo se hace consulta la sección 11.9 del documento Using the exam document class.

Quizás te interese también…

Este artículo forma parte de la serie: La clase exam de \(\LaTeX\)

1 comentario

  1. Camila

    Muy buena solución. Estuve mucho tiempo intentándolo de otras maneras que utilizaban más líneas y nunca funcionaban bien. Esta solución lo hizo de una manera muy fácil, rápida y sencilla. Muchas gracias!!!!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

© 2024 Bilateria

Tema por Anders NorenArriba ↑