Quando não chega criar um novo comando para realizar algumas tarefas repetitivas, como por exemplo por algum texto em itálico mas também com margens diferentes, linhas horizontais a delimitar esse pedaço de texto, etc, temos de criar mais do que um comando, temos de criar um novo ambiente que será iniciado como qualquer outro ambiente, com o \begin, e terminado com \end.

Para criarmos um novo ambiente usamos o comando

\newenvironment

A sintax do comando é simples:

\newenvironment{nome_do_ambiente}{comandos iniciais}{comandos finais}

Por exemplo:

\newenvironment{questao}

{

\medskip

\hrule

\medskip

{\bf \small Questão:}

\begin{it}

}

{

\end{it}

\medskip

\hrule

\medskip

}

gera um ambiente que se inicia com

\begin{questao}

coloca uma linha horizontal, depois escreve a palavras Questão: em negrito e a tamanho small, todo o texto aparecerá em itálico e coloca uma linha horizontal no fim. Terminamos com

\end{questao}

Quando não sabemos o comando para escrever um determinado símbolo temos que mergulhar nas listas imensas de símbolos que o \LaTeX nos permite usar.

Para termos uma ideia da quantidade de símbolos possíveis, basta abrir este ficheiro.

Descobri há pouco tempo uma aplicação online que nos permite saber que comando para um determinado símbolo. Para isso basta desenhá-lo nesse site e voilá.. surge-nos do lado direito um conjunto de possibilidades para o símbolo que desenhámos, é só escolher o que queremos.

detexify

Podem encontrar o site aqui: Detexify

Vivas! Já há muito que não escrevia por cá, mas a verdade é que não tenho aprendido muito em \LaTeX…infelizmente.

Ainda assim, acho que vale a pena chamar a atenção para a nova versão do compilador MiKTeX.

Penso que todos devem ter conhecimento deste compilador, mesmo aqueles que não o usam :) e, para aqueles que usam e ainda não tinham reparado nesta actualização, cá vai o aviso :)

A página oficial é: http://miktex.org/.

E está disponível também a versão portátil para quem usa computadores sem privilégios de administrador.

cumps.

Precisei de mais tamanhos de fontes para além dos tradicionais 10pt, 11pt e 12pt para um texto…

É deveras a necessidade a mãe do engenho, neste caso, o engenho foi pouco pois bastou uma pesquisa no google para encontrar o que queria.

Fiquei a saber que existem umas classes de documentos que disponibilizam os tamanhos 8pt, 9pt, 14pt, 17pt e 20pt para além dos já citados tamanhos habituais. Estas classes estão “ligadas” às classes mais usadas como article, report ou book pois usam as mesmas formatações e para as usarmos basta acrescentar “ext” à classe pretendida, por exemplo “extarticle”.

O “ext” vem de “extra sizes” pois estas classes estão também relacionadas com o package extsizes.

As classes que se podem usar com esta particularidade são:

  • extarticle
  • extbook
  • extproc
  • extletter
  • extreport

Exemplo de uso:

\documentclass[20pt]{article}

Aconselho a não abusarem destes tamanhos diferentes… eu usei porque queria fazer um poster e precisava de uma letra maior, avaliem bem a situação quando decidirem usar esta possibilidade.

Quando escrevemos texto matemático e temos que usar parênteses ou chavetas (à frente referidos como delimitadores) a acompanhar fracções, expoentes ou sinais que sejam um pouco maiores que as letras normais, se não usarmos os comandos \left e \right, verificamos que os delimitadores não têm um tamanho correcto.

Mas se vamos escrever esses comandos por cada vez que usarmos delimitadores, a tarefa torna-se extremamente aborrecida.

Foi por isso que resolvi acrescentar ao preâmbulo dos meus documentos três linhas muito simples:

\newcommand{\PR}[1]{\ensuremath{\left[#1\right]}}
\newcommand{\PC}[1]{\ensuremath{\left(#1\right)}}
\newcommand{\chav}[1]{\ensuremath{\left\{#1\right\}}}

A primeira implementa o comando \PR que trabalha com Parênteses Rectos, a segunda o comando \PC para Parênteses Curvos e a terceira, para chavetas, acrescenta o comando \chav.

Estes comandos funcionam mesmo sem a utilização de um ambiente matemático, ou seja, podem ser usados no meio de um texto sem ser necessário recorrer a $$.

Exemplo

Para exemplo muito rápido, se a intenção for colocar \displaystyle \frac{1}{2} entre parênteses curvos então escrevo:

\PC{\frac{1}{2}}

Para os outros comandos deve-se proceder da mesma forma.
Este post pode ser especialmente útil ao usar a informação contida aqui.

Grande parte das coisas que surgem nos cabeçalhos e rodapés são textos que nós queremos automáticos, como seja a página, o título do texto ou o título do capítulo/secção/subsecção…

Informações como a data e o autor normalmente são fixas ao longo do texto e por isso basta colocá-los no local que queremos fazendo uso do fancyhdr.

Outras informações como o número de página ou o número de capítulo também são relativamente simples de colocar:

O número de página coloca-se recorrendo ao comando \thepage. Por exemplo, se quisermos que no cabeçalho ao lado direito apareça o número de página escrevemos:

\rhead{\thepage}

Se for o número do capítulo, usamos também o \the, mas desta vez será \thechapter.

\rhead{Capítulo \thechapter}

Claro que não usamos só o número com pena de se confundir com o número de página.

As coisas ficam um pouco menos intuitivas quando queremos introduzir o nome do capítulo ou da secção e ainda mais se entrarmos nas subsecções.

Sem nos darmos por isso, o \LaTeX altera uns comandos que se chamam \leftmark e \rightmark que são o nome do capítulo e o nome da secção respectivamente. Seguindo o mesmo exemplo, se quisermos o nome do capítulo na parte direira no cabeçalho, colocamos

\rhead{\leftmark}

O nome da secção

\rhead{\rightmark}

No entanto, a formatação destes comandos está pré-definida para maiúsculas e escreve para além do nome também o número, por exemplo: CAPÍTULO 1. NOME DO CAPÍTULO

Se quisermos uma configuração mais personalizada então o melhor mesmo é por mãos à obra.

Em primeiro lugar definimos o comando que vai armazenar o nome do Capítulo

\newcommand\nomecapitulo{}

E de seguida procedemos ao armazenamento:

\renewcommand\chaptermark[1]{\renewcommand\nomecapitulo{#1}}

Basta depois escrever o comando \nomecapitulo no local onde queremos o nome do capítulo. Como no exemplo:

\rhead{\nomecapitulo}

Podem ainda proceder a alterações na formatação da letra usada adicionando as opções à parte que tem #1. Se quiserem o nome do capítulo em itálico, escrevem:

\renewcommand\chaptermark[1]{\renewcommand\nomecapitulo{\it #1}}

Se o desejado fosse o nome da secção então estas duas linhas ficariam:

\newcommand\nomeseccao{}
\renewcommand\sectionmark[1]{\renewcommand\nomeseccao{#1}}

Outra coisa que por vezes se usa é colocar o número de páginas acompanhado do número total de páginas, assim: página 1 de 100, por exemplo.

Para colocarmos tal informação temos acrescentar o package lastpage:

\usepackage{lastpage}

Passamos a ter a possibilidade de recorrer ao comando:

\pageref{LastPage}

NOTA: Notem na letra maiúscula L e P em LastPage!!

Colocamos então onde queremos a informação

Página \thepage de \pageref{LastPage}

É muito simples!

Para ver informação sobre cabeçalhos e rodapés ver 1 e 2.

Este post é uma continuação deste.

Há uma outra forma de usar o fancyhdr para construir cabeçalhos e rodapés.

Para começar, a adicionar ao que já foi dito no post anterior sobre a mesma matéria, mais um pouco de inglês :) : em inglês odd é ímpar e even é par.

O que se faz, é escolher o sítio onde vai ficar a informação usando apenas os dois comandos já mencionados:

\fancyhead

\fancyfoot

que desta feita vão funcionar acompanhados pelas referências ao local.

Os locais são identificados com letras maiúsculas e são os mesmos que antes: L para esquerda, C para centro e R para direita, que podem ser combinados com o E de even e o O de odd. Estes locais são declarados entre [] logo a seguir ao comando \fancyhead ou \fancyfoot.

Exemplo:

Para introduzir informação no cabeçalho à esquerda, colocamos:

\fancyhead[L]{O que queremos no cabeçalho}

Depois podemos combinar estas letras com o E de página par e O de página ímpar.

Exemplo

Se desejarmos que o número de página apareça à direita do rodapé nas páginas ímpares e à esquerda do rodapé nas páginas pares escrevemos:

\fancyfoot[OR,EL]{\thepage}

NOTA: Se for necessário apagar toda a informação antes de começar a definir tudo, deve-se colocar o comando: \fancyhf{}

Podem encontrar aqui a documentação relativa ao package fancyhdr.

No próximo post vou referir-me a comandos úteis para usar nos cabeçalhos e rodapés.

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.

Página Seguinte »