Outubro 2008


O package fancyhdr é de extrema utilidade quando queremos personalizar o cabeçalho e rodapé de um texto.

Toda a informação é inserida no preâmbulo do documento e, claro está, começamos por carregar o package:

\usepackage{fancyhdr}

Depois, temos que dizer que queremos que o estilo da página siga a fórmula dada pelo fancyhdr. Escrevemos então que:

\pagestyle{fancy}

A partir de agora temos que ter em mente duas coisas

  1. que os cabeçalhos e os rodapés estão divididos em 3 partes, esquerda, centro e direita;
  2. que os cabeçalhos podem ser diferentes dependendo da paridade da página (se é par ou ímpar).
Outra coisa que ajuda sempre é saber que em inglês left é esquerda, center é centro e right é direita, para além de que header é cabeçalho e footer é rodapé.

Vamos então definir o que fica em cada parte. Neste exemplo estou a considerar um documento com um só lado, ou seja, é tudo igual independentemente da página ser par ou ímpar. Escrevo então:

\lhead{O que quero no cabeçalho parte esquerda}
\chead{O que quero no cabeçalho parte central}
\rhead{O que quero no cabeçalho parte direita}
\lfoot{O que quero no rodapé parte esquerda}
\cfoot{O que quero no rodapé parte central}
\rfoot{O que quero no rodapé parte direita}

Se não quiser nada em alguma das partes, deixo o conteúdo vazio, por exemplo, se quiser que não apareça nada na parte esquerda do rodapé, escrevo:

\lfoot{}

Ou então…

Para ter a certeza que todas as parte que quero vazias, aparecem efectivamente vazias sem ter que as definir, escrevo o seguinte:

\fancyhead{}
\fancyfoot{}

Estes dois comandos preenchem todas as partes que não definimos com o que quer que esteja entre as chavetas.

Exemplo:

\fancyhead{Viva}
\fancyfoot{}
\chead{Mais}
\lfoot{Muito}
\rfoot{Mais}

O cabeçalho definido no exemplo teria à esquerda e à direita a palavra Viva (definida no \fancyhead) e ao centro a palavra Mais; o cabeçalho teria à esquerda a palavra Muito, ao centro fica vazio (devido ao \fancyfoot estar vazio) e à direita a palavra Mais.

Para trabalhar com cabeçalhos pares e ímpares, usamos exactamente os mesmos comandos só que ao introduzir a parte par usamos [] e para a parte ímpar usamos {}.

Exemplo:

Para definir a parte esquerda de um rodapé que em página par é Viva e em página ímpar é Mais, escrevo:

\lfoot[Viva]{Mais}

To be continued… 🙂 (Heroes a mais!)

De quando em vez aparece uma palavra cuja hifenização, ou divisão silábica se preferirem, está mal feita aquando da mudança de linha.

Para resolver esse tipo de problemas podem recorrer à divisão manual da palavra.

De que forma se faz a hifenização manual?

Muito simplesmente colocando um \- (barra hífen) entre cada sílaba (ou entre aquelas que estão a dar problemas.

Exemplo:

Tinha um documento que me dividia a palavra conhecimento da seguinte forma: Conhec (fim de linha) imento, para corrigir, no documento tex, escrevi a palavra assim:

Co\-nhe\-ci\-men\-to

E… problema resolvido!

Encontrei ontem um package que altera a forma como os capítulos são abertos. Em vez do tradicional “Capítulo 1” sem qualquer formatação especial, este pacote permite alterar a forma como esta informação é apresentada.

O package chama-se fncychap e, claro está, para o adicionar temos que colocar a linha

\usepackage[opção]{fncychap}

no preâmbulo. A opção é o tipo de formatação que queremos usar:

  • Sonny
  • Conny
  • Lenny
  • Glenn
  • Renje
  • Bjarne
  • Bjornstrup

Para todas elas há uma versão para \chapter e \chapter*. A imagem seguinte mostra algumas destas configurações.

Podem encontrar a documentação relativa a este package aqui.

Uma coisa que me aborrece é escrever texto matemático inserido numa linha de texto. O que normalmente acontece é o texto matemático ficar mais pequeno que o resto do texto, e isto acontece mais quando trabalhamos com fracções ou raízes. Mas não é um problema exclusivo do texto matemático em linhas.

Já há algum tempo, numa procura por resolver este problema encontrei o seguinte comando:

\displaystyle

e usa-se da seguinte forma:

texto texto texto $\displaystyle texto matemático$ texto texto texto

Exemplo:

$\displaystyle A(x)=\frac{x^3+2x+1}{x-x^2}$\,.

Resultado sem \displaystyle:

A(x)=\frac{x^3+2x+1}{x-x^2}\,.

Resultado com \displaystyle:

\displaystyle A(x)=\frac{x^3+2x+1}{x-x^2}\,.

Bom… isto até é muito bonito, mas o que me “atormentava” era o facto de ter que inserir em todos os ambientes matemáticos o comando \displaystyle, e foi a solução para este problema que me fez escrever este post.

Recorremos ao comando \everyXXX !!!

Inserimos no preâmbulo a seguinte linha:

\everymath{\displaystyle}

e… temos o comando \displaystyle aplicado a toda a matemática! E já não precisamos de o escrever mais!

Clique em mais para continuar… 🙂

(mais…)

Ao longo de um trabalho podemos usar várias fórmulas e usar determinada notação. Torna-se por isso útil que se esclareça o leitor, seja ele versado ou não na matéria, sobre o que significam todas aquelas letras. O \LaTeX permite que se introduza uma lista da numenclatura – ou notação, como lhe quiserem chamar – num qualquer local do documento.

Temos, claro está, o habitual pacote, ou package, para carregar. Desta feita chama-se nomencl.

Assim, adicionamos ao preâmbulo a linha:

\usepackage{nomencl}

mas, para além desta linha, vamos adicionar também no preâmbulo uma instrução para ser elaborada a lista:

\makenomenclature

De seguida começamos o nosso documento como habitualmente e, no sítio onde quisermos introduzir a lista, colocamos a seguinte instrução:

\printnomenclature

Mas como são introduzidas as entradas na lista?

Normalmente essas entradas são feitas no local onde aparecem, pela primeira vez, as letras a “descodificar” e para isso usa-se o comando

\nomenclature

A introdução faz-se, então, do seguinte modo:

\nomenclature{Símbolo usado}{Explicação do símbolo usado}

Exemplo:

\begin{equation}
A=\sqrt{s(s-a)(s-b)(s-c)}
\end{equation}
\nomenclature{$s$}{O semi-perímetro do triângulo (metade do
perímetro)}

Mas não é só isso… infelizmente há ainda um pequeno passo que torna o uso deste package um pouco traiçoeiro.

Para que a lista apareça, é necessário criar um ficheiro .nls a partir do ficheiro .nlo que foi criado usando as informações que estão no ficheiro nomencl.ist.

Confuso?? Se sim então basta saber que apenas é necessário correr a seguinte instrução:

makeindex <nome do ficheiro tex>.nlo -s nomencl.ist -o <nome do ficheiro tex>.nls

Como fazer isso? Bom.. acho que depende do sistema. Eu sei como o fazer no WinEdt…

Tal como mostra a figura, vão a Accessories e escolhem Run… ou então carregam directamente nas teclas de atalho Shift+Ctrl+R. E preenchem a janela que vos aparece:

Na primeira linha coloquei a instrução que indiquei acima (o meu ficheiro chama-se experiência) e na segunda linha coloquei o directório onde está gravado o ficheiro tex, penso ser isso o pedido :).

Há muito mais coisas que podem fazer com este package, para aprofundar o tema, consultem este pdf.

Pode também ser necessário alterar o nome da secção de Nomenclature para outro qualquer, como Nomenclatura (em português 🙂 ). Para isso, basta usar o conhecido \renewcommand:

\renewcommand{\nomname}{Nomenclatura}

Para saber mais sobre alterações de textos automáticos e não só consultar:

E já agora… podem também consultar a página da wikipedia sobre o Teorema de Heron. 🙂

Para fazer uma tabela em \LaTeX gastamos muito tempo… pelo menos para mim é uma coisa muito aborrecida de fazer porque me perco um pouco entre os & 🙂

Descobri recentemente um add-in do MS Excel que facilita, e muito!, esta tarefa.

O ficheiro chama-se excel2latex e podem-no encontrar aqui. É só abrir o ficheiro xla no Excel, não sei se funciona também no OpenCalc (agradecia que se alguém experimentasse, deixasse um comentário) e fazer a tabela!

Claro está que tem algumas limitações, nomeadamente na formação da tabela e por isso não esperem fazer tabelas muito personalizadas com este add-in, ainda assim, para aquelas tabelas simples é muito útil.

Depois de fazermos a tabela como mostra a figura abaixo, seleccionamos a tabela e é só usar o excel2latex.

Depois podem escolhe ou gravar para um ficheiro ou então copiar o texto e colocar no vosso ficheiro tex.

Para além do índice normal – a chamada tabela de conteúdos – podemos ainda acrescentar um índice de tabelas que tivermos no documento ou então um índice de imagens.

O comando para introduzir um índice de tabelas é:

\listoftables

Se quiserem introduzir uma lista de figuras, então escrevam:

\listoffigures

Claro está que os comandos são inseridos onde queremos que os índices apareçam 🙂 .

Estes comandos funcionam nas classes report, book e thesis.

Página seguinte »