Novembro 2012


Sobre:

\usepackage{titling}

No post anterior, em que abordei o tema dos cabeçalhos e rodapés, usei uma definição que para alguns pode ser um pouco estranha.

Quando pedi para colocar no cabeçalho o autor e o título do artigo usei os comandos \theauthor e \thetitle.

Estas duas referências são usadas quando na compilação aparece a instrução

\maketitle

acontece é que depois disso ficam inacessíveis. É como se não estivessem definidas.

Para manter essa informação recorri ao package titling que, para além de ter a vantagem de guardar os nomes de autor, título e data, e permitir usá-los durante o texto, também permite alterar o autor durante o próprio documento usando exactamente a mesma instrução que usámos no preâmbulo.

Por exemplo, suponhamos que temos uma colecção de textos de diferentes autores e cada texto vai ter uma secção própria. Podemos fazer o seguinte:

\section{Secção do autor 1}
\author{autor 1}
...
\section{Secção do autor 2}
\author{autor 2}

Recomendo a consulta da documentação oficial do package titling que podem encontrar aqui.

Já escrevi alguns posts sobre o package fancyhdr, para trabalhar os cabeçalhos e rodapés, mas nunca referi uma opção que ele faculta e que pode ser bastante útil.
A questão é: como alterar os cabeçalhos e rodapés numa página específica?

Quando queremos retirar completamente o cabeçalho e o rodapé numa página usamos:

\thispagestyle{plain}

o que o fancyhdr permite é definir um estilo que usamos depois com o \thispagestyle.

Então imaginemos que todas as páginas vão ter no cabeçalho: o título à esquerda e o autor à direita e no rodapé: a página à direita, definimos no preâmbulo todas essas instruções:

\usepackage{fancyhdr}
\fancyhead{}
\fancyfoot{}
\lhead{\thetitle}
\rhead{\theauthor}
\rfoot{\thepage}

depois não se esqueçam de pedir o uso desta formatação com o comando

\pagestyle{fancy}

Mas digamos que na última página queremos trocar a posição do autor e do título mas manter a posição do número de página. Então definimos um novo estilo assim:

\fancypagestyle{título do estilo}{intruções do estilo}

Exemplo:

\fancypagestyle{ultima}{
\fancyhead{}
\fancyfoot{}
\lhead{\theauthor}
\rhead{\thetitle}
\rfoot{\thepage}
}

Na página que queremos que tenha um estilo diferente, acrescentamos

\thispagestyle{ultima}

claro que nos editores de \LaTeX não aparecem páginas mas basta fazer a correspondência entre o texto no editor e o texto nas páginas do documento gerado para saber que página é. No caso do exemplo era a última.

Esta dúvida foi-me colocada pelo Nálison Martins.