Professional Documents
Culture Documents
introduo ao L
A
T
E
X2
Ou L
A
T
E
X2
em 137 minutos
por Tobias Oetiker
Hubert Partl, Irene Hyna e Elisabeth Schlegl
Traduo portuguesa por Alberto Simes
Verso 4.20.1, 18 de Setembro de 2007
ii
Direitos de Cpia 1995-2006 por Tobias Oetiker e Colaboradores do LShort.
Todos os direitos reservados.
Este documento gratuito; pode redistribui-lo e/ou modic-lo dentro dos ter-
mos da Licena Pblica e Genrica GNU, tal como publicada pela Fundao do
Software Livre, verso 2 da licena, ou (na sua opinio) qualquer verso mais re-
cente.
Este documento distribudo na esperana de que seja til mas SEM QUAL-
QUER GARANTIA, nem mesmo a garantia implcita de ENQUADRAMENTO
PARA UM FIM PARTICULAR. Veja a Licena Pblica e Genrica GNU para
mais detalhes.
Deve ter recebido uma cpia da Licena Pblica e Genrica GNU juntamente
com este documento; caso contrrio, escreva para Free Software Foundation, Inc.,
675 Mass Ave, Cambridge, MA 02139, USA.
Obrigado!
Muito do material utilizado nesta introduo provm de uma introduo
austraca ao L
A
T
E
X 2.09 escrita em alemo por:
Hubert Partl <partl@mail.boku.ac.at>
Zentraler Informatikdienst der Universitt fr Bodenkultur Wien
Irene Hyna <Irene.Hyna@bmwf.ac.at>
Bundesministerium fr Wissenschaft und Forschung Wien
Elisabeth Schlegl <noemail>
in Graz
Se est interessado no documento alemo, pode encontrar a verso ac-
tualizada para L
A
T
E
X2
. Apren-
der tambm um pouco da histria do L
A
T
E
X. Aps a leitura deste
captulo, dever ter uma ideia bsica do funcionamento do L
A
T
E
X.
O Captulo 2 apresenta com algum detalhe como escrever um documento.
Explica igualmente a maior parte dos comandos e ambientes essenciais
do L
A
T
E
X. Aps a leitura deste captulo, estar pronto a escrever o seu
primeiro documento.
O Captulo 3 explica como escrever frmulas com o L
A
T
E
X. Mais uma vez,
numerosos exemplos ajudaro a perceber como usar uma das maiores
potencialidades do L
A
T
E
X. No nal deste captulo, encontrar tabelas
com listas de todos os smbolos matemticos disponveis em L
A
T
E
X.
O Captulo 4 explica a gerao de ndices e bibliograas, incluso de gr-
cos EPS, e algumas outras extenses teis.
vi Prefcio
O Captulo 5 mostra como usar o L
A
T
E
X para criar grcos. Em vez de
desenhar uma imagem usando um qualquer programa grco, gravar o
desenho e incluir o cheiro no L
A
T
E
X, pode descrever a gura de forma
a que o L
A
T
E
X a desenhe.
O Captulo 6 contm alguma informao potencialmente perigosa sobre
como fazer alteraes aos formatos standard produzidos pelo L
A
T
E
X.
Mostrar como modicar coisas de modo que o belo resultado do L
A
T
E
X
comece a car bastante mau.
importante ler os captulos sequencialmenteanal o livro no assim
to grande. Leia cuidadosamente os exemplos, porque grande parte da in-
formao est contida nos vrios exemplos que vai encontrar ao longo do
livro.
Se precisar de mais algum material relacionado com o L
A
T
E
X visite o arquivo
ftp ftp://www.ctan.org e os seus mirrors ociais volta do mundo.
Encontrar outras referncias ao CTAN ao longo deste livro. Especial-
mente, apontadores para software e documentos que poder querer copiar
para o seu computador. Em vez de escrever endereos completos, escrevere-
mos apenas CTAN: seguido da localizao que deve visitar dentro da rvore
do CTAN.
Se deseja instalar o L
A
T
E
X para utilizao no seu computador, visite
CTAN:/tex-archive/systems.
Se tiver ideias sobre alguma coisa que deva ser adicionada, alterada ou remo-
vida deste documento, por favor, avise-me. Estou interessado especialmente
em respostas dos que esto a aprender L
A
T
E
X sobre quais as partes desta in-
troduo fceis de compreender e quais as que devem ser explicadas melhor.
Tobias Oetiker <oetiker@ee.ethz.ch>
Departamento de Tecnologia da Informao e
Engenharia Electrotcnica,
Instituto de Tecnologia Federal da Sua
A verso actual e original deste documento est disponvel em
CTAN:/tex-archive/info/lshort A verso portuguesa est disponvel em
http://alfarrabio.di.uminho.pt/~albie/lshort. Traduo por
Alberto Simes (albie@alfarrabio.di.uminho.pt)
Departamento de Informtica da Universidade do Minho
Contedo
Obrigado! iii
Prefcio v
1 Coisas Que Precisa de Saber 1
1.1 O Nome do Jogo . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 T
E
X . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2 L
A
T
E
X . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Autor, Paginadores e Tipgrafo . . . . . . . . . . . . . 2
1.2.2 Desenho do Formato . . . . . . . . . . . . . . . . . . . 3
1.2.3 Vantagens e Desvantagens . . . . . . . . . . . . . . . . 3
1.3 Ficheiros L
A
T
E
X . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3.1 Espaos . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3.2 Caracteres Especiais . . . . . . . . . . . . . . . . . . . 5
1.3.3 Comandos L
A
T
E
X . . . . . . . . . . . . . . . . . . . . . 5
1.3.4 Comentrios . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Estrutura do Ficheiro . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Uma Sesso de Edio Tpica . . . . . . . . . . . . . . . . . . 9
1.6 O Formato do Documento . . . . . . . . . . . . . . . . . . . . 10
1.6.1 Classes de Documentos . . . . . . . . . . . . . . . . . 10
1.6.2 Pacotes . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.7 Ficheiros que provavelmente encontrar . . . . . . . . . . . . 12
1.7.1 Estilo de Pginas . . . . . . . . . . . . . . . . . . . . . 14
1.8 Grandes Projectos . . . . . . . . . . . . . . . . . . . . . . . . 15
2 Escrever Texto 17
2.1 A Estrutura de um Texto . . . . . . . . . . . . . . . . . . . . 17
2.2 Quebras de Linha e Quebras de Pgina . . . . . . . . . . . . . 19
2.2.1 Pargrafos Justicados . . . . . . . . . . . . . . . . . . 19
2.2.2 Hifenizao . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3 Texto j Feito . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4 Smbolos e Caracteres Especiais . . . . . . . . . . . . . . . . . 22
viii CONTEDO
2.4.1 Aspas . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.2 Traos e Hfens . . . . . . . . . . . . . . . . . . . . . . 22
2.4.3 Til () . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.4 Smbolo de Graus () . . . . . . . . . . . . . . . . . . 23
2.4.5 Smbolo de Euro (e) . . . . . . . . . . . . . . . . . . . 23
2.4.6 Reticncias (. . . ) . . . . . . . . . . . . . . . . . . . . . 24
2.4.7 Ligaes . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4.8 Caracteres Especiais e Acentos . . . . . . . . . . . . . 25
2.5 Suporte de Lnguas Internacionais . . . . . . . . . . . . . . . 25
2.5.1 Suporte para Alemo . . . . . . . . . . . . . . . . . . 28
2.5.2 Suporte para Portugus . . . . . . . . . . . . . . . . . 29
2.5.3 Suporte para Francs . . . . . . . . . . . . . . . . . . 30
2.5.4 Suporte para Coreano . . . . . . . . . . . . . . . . . . 31
2.5.5 Suporte para Grego . . . . . . . . . . . . . . . . . . . 33
2.5.6 Suporte para Cirlico . . . . . . . . . . . . . . . . . . . 34
2.6 O Espao entre Palavras . . . . . . . . . . . . . . . . . . . . . 35
2.7 Ttulos, Captulos e Seces . . . . . . . . . . . . . . . . . . . 36
2.8 Referncias Cruzadas . . . . . . . . . . . . . . . . . . . . . . . 38
2.9 Notas de Rodap . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.10 Palavras Realadas . . . . . . . . . . . . . . . . . . . . . . . . 39
2.11 Ambientes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.11.1 Indicar, Enumerar, e Descrever . . . . . . . . . . . . . 40
2.11.2 Esquerda, Direita e Centro . . . . . . . . . . . . . . . 41
2.11.3 Citaes e Versos . . . . . . . . . . . . . . . . . . . . . 41
2.11.4 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.11.5 Tal & Qual . . . . . . . . . . . . . . . . . . . . . . . . 42
2.11.6 Tabelas . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.12 Corpos Flutuantes . . . . . . . . . . . . . . . . . . . . . . . . 45
2.13 Protegendo Comandos Frgeis . . . . . . . . . . . . . . . . . . 48
3 Frmulas Matemticas 49
3.1 Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.2 Agrupar em Modo Matemtico . . . . . . . . . . . . . . . . . 51
3.3 Construindo Blocos de Frmulas Matemticas . . . . . . . . . 51
3.4 Espaamento Matemtico . . . . . . . . . . . . . . . . . . . . 56
3.5 Material Alinhado Verticalmente . . . . . . . . . . . . . . . . 56
3.6 Fantasmas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.7 Tamanho da Matemtica . . . . . . . . . . . . . . . . . . . . 59
3.8 Teoremas, Leis, . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.9 Smbolos Gordos . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.10 Lista de Smbolos Matemticos . . . . . . . . . . . . . . . . . 63
CONTEDO ix
4 Especialidades 71
4.1 Incluindo Grcos Encapsulated PostScript . . . . . . . . . 71
4.2 Bibliograa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.3 Indexar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
4.4 Cabealhos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.5 O Pacote Verbatim . . . . . . . . . . . . . . . . . . . . . . . . 77
4.6 Instalando Pacotes ExtraL
A
T
E
X . . . . . . . . . . . . . . . . . 77
4.7 Usar o pdfL
A
T
E
X . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.7.1 Documentos PDF para a Internet . . . . . . . . . . . . 79
4.7.2 Os tipos de letra . . . . . . . . . . . . . . . . . . . . . 80
4.7.3 Uso de Grcos . . . . . . . . . . . . . . . . . . . . . . 82
4.7.4 Ligaes de Hipertexto . . . . . . . . . . . . . . . . . . 83
4.7.5 Problemas com Ligaes . . . . . . . . . . . . . . . . . 85
4.7.6 Problemas com Bookmarks . . . . . . . . . . . . . . . 86
4.8 Criar Apresentaes . . . . . . . . . . . . . . . . . . . . . . . 88
5 Produo de Grcos Matemticos 91
5.1 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.2 O ambiente picture . . . . . . . . . . . . . . . . . . . . . . . 92
5.2.1 Comandos Bsicos . . . . . . . . . . . . . . . . . . . . 92
5.2.2 Segmentos de Recta . . . . . . . . . . . . . . . . . . . 93
5.2.3 Setas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.2.4 Crculos . . . . . . . . . . . . . . . . . . . . . . . . . . 95
5.2.5 Textos e Formulas . . . . . . . . . . . . . . . . . . . . 96
5.2.6 \multiput e \linethickness . . . . . . . . . . . . . . 96
5.2.7 Ovais . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.2.8 Mltiplos usos de caixas de imagem pr-denidas . . . 98
5.2.9 Curvas de Bzier Quadrticas . . . . . . . . . . . . . . 99
5.2.10 Parbolas . . . . . . . . . . . . . . . . . . . . . . . . . 100
5.2.11 Rapidamente a teoria da Relatividade . . . . . . . . . 101
5.3 X
Y
-pic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
6 Congurar o L
A
T
E
X 105
6.1 Novos Comandos, Ambientes e Pacotes . . . . . . . . . . . . . 105
6.1.1 Novos Comandos . . . . . . . . . . . . . . . . . . . . . 106
6.1.2 Novos Ambientes . . . . . . . . . . . . . . . . . . . . . 107
6.1.3 Expao Extra . . . . . . . . . . . . . . . . . . . . . . . 107
6.1.4 A linha de comando do L
A
T
E
X . . . . . . . . . . . . . . 108
6.1.5 O Seu Prprio Pacote . . . . . . . . . . . . . . . . . . 109
6.2 Letras e Tamanhos . . . . . . . . . . . . . . . . . . . . . . . . 109
6.2.1 Tipos de letra . . . . . . . . . . . . . . . . . . . . . . . 109
6.2.2 Perigo, Will Robinson, Perigo . . . . . . . . . . . . . . 112
6.2.3 Aviso . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.3 Espaamento . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
x CONTEDO
6.3.1 Espao entre linhas . . . . . . . . . . . . . . . . . . . . 113
6.3.2 Formatao de Pargrafos . . . . . . . . . . . . . . . . 114
6.3.3 Espao Horizontal . . . . . . . . . . . . . . . . . . . . 114
6.3.4 Espao Vertical . . . . . . . . . . . . . . . . . . . . . . 115
6.4 Formato da Pgina . . . . . . . . . . . . . . . . . . . . . . . . 116
6.5 Mais divertimento com comprimentos . . . . . . . . . . . . . 118
6.6 Caixas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
6.7 Rguas e Estruturas . . . . . . . . . . . . . . . . . . . . . . . 121
Bibliograa 123
ndice 125
Lista de Figuras
1.1 Um cheiro L
A
T
E
X mnimo. . . . . . . . . . . . . . . . . . . . 8
1.2 Exemplo de um Artigo Real. . . . . . . . . . . . . . . . . . . 8
4.1 Exemplo de congurao do fancyhdr. . . . . . . . . . . . . . 76
4.2 Exemplo de cdigo para a classe beamer. . . . . . . . . . . . . 89
6.1 Pacote de Exemplo. . . . . . . . . . . . . . . . . . . . . . . . 109
6.2 Parmetros do Formato de Pgina. . . . . . . . . . . . . . . . 117
Lista de Tabelas
1.1 Classes de Documentos. . . . . . . . . . . . . . . . . . . . . . 10
1.2 Opes das Classes de Documentos. . . . . . . . . . . . . . . 11
1.3 Alguns Pacotes Distribudos com o L
A
T
E
X. . . . . . . . . . . . 13
1.4 Os Estilos de Pginas Pr-denidos no L
A
T
E
X. . . . . . . . . . 15
2.1 Um saco cheio de smbolos de Euro . . . . . . . . . . . . . . . 24
2.2 Caracteres especiais e Acentos. . . . . . . . . . . . . . . . . . 25
2.3 Caracteres especiais alemes. . . . . . . . . . . . . . . . . . . 28
2.4 Comandos especiais para Francs. . . . . . . . . . . . . . . . . 30
2.5 Prembulo para documentos em Grego. . . . . . . . . . . . . 33
2.6 Caracteres Especiais Gregos. . . . . . . . . . . . . . . . . . . 34
2.7 Bulgaro, Russo, e Ucraniano . . . . . . . . . . . . . . . . . . . 35
2.8 Permisses de Colocao de Corpos Flutuantes. . . . . . . . . 46
3.1 Acentos Matemticos. . . . . . . . . . . . . . . . . . . . . . . 63
3.2 Letras Gregas. . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.3 Relaes Binrias. . . . . . . . . . . . . . . . . . . . . . . . . 64
3.4 Operadores Binrios. . . . . . . . . . . . . . . . . . . . . . . . 64
3.5 Operadores GRANDES. . . . . . . . . . . . . . . . . . . . . . 65
3.6 Setas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.7 Delimitadores. . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.8 Grandes Delimitadores. . . . . . . . . . . . . . . . . . . . . . 66
3.9 Smbolos Sortidos. . . . . . . . . . . . . . . . . . . . . . . . . 66
3.10 Smbolos no Matemticos. . . . . . . . . . . . . . . . . . . . 66
3.11 Delimitadores AMS. . . . . . . . . . . . . . . . . . . . . . . . 66
3.12 Letras AMS gregas e hebraicas. . . . . . . . . . . . . . . . . . 66
3.13 Relaes Binrias AMS. . . . . . . . . . . . . . . . . . . . . . 67
3.14 Setas AMS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.15 Relaes Binrias Negadas e Setas AMS. . . . . . . . . . . . . 69
3.16 Operadores Binrios AMS. . . . . . . . . . . . . . . . . . . . 69
3.17 AMS Sortidos. . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.18 Alfabeto Matemtico. . . . . . . . . . . . . . . . . . . . . . . 70
4.1 Nomes das Chaves para o Pacote graphicx. . . . . . . . . . . . 72
xiv LISTA DE TABELAS
4.2 Exemplos da Sintaxe das Chaves de Indexao. . . . . . . . . 75
6.1 Letras. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
6.2 Tamanho de Letra. . . . . . . . . . . . . . . . . . . . . . . . . 110
6.3 Tamanhos Absolutos nas Classes Padro. . . . . . . . . . . . 111
6.4 Letras Matemticas. . . . . . . . . . . . . . . . . . . . . . . . 111
6.5 Unidades do T
E
X. . . . . . . . . . . . . . . . . . . . . . . . . 116
Captulo 1
Coisas Que Precisa de Saber
Na primeira parte deste captulo, ser apresentada uma viso geral sobre a
losoa e histria do L
A
T
E
X2
pronunciado Lay-
tech two e e escrito LaTeX2e.
1.2 Bases
1.2.1 Autor, Paginadores e Tipgrafo
Para publicar alguma coisa, os autores do um manuscrito dactilografado
companhia de publicao. Um dos seus paginadores decide o formato do
documento (largura da coluna, tipos de letra, espaos antes e aps os cabe-
alhos, . . . ). Este escreve as suas instrues no manuscrito, que entregue
ao tipgrafo que imprime o livro de acordo com estas instrues.
Um paginador humano tenta imaginar o que o autor tinha em mente
enquanto escrevia o manuscrito. Tem de decidir os cabealhos de captulos,
exemplos, frmulas, etc. baseado nos seus conhecimentos prossionais e no
contedo do manuscrito.
Num ambiente L
A
T
E
X, o paginador o L
A
T
E
X, que usa o T
E
X como seu
tipgrafo. Mas o L
A
T
E
X apenas um programa e portanto precisa de algum
apoio. O autor tem de dar informao adicional descrevendo a estrutura
lgica do seu trabalho. Esta informao escrita no texto como comandos
L
A
T
E
X.
Esta uma grande diferena da abordagem WYSIWYG
2
que a maior
parte dos processadores de texto modernos, tais como o MS Word ou Corel
WordPerfect, usam. Com estas aplicaes, os autores especicam o formato
do documento de uma forma interactiva enquanto vo escrevendo o texto no
computador. Durante esse processo, podem ver no cran como o resultado
nal vai aparecer quando impresso.
Ao usar o L
A
T
E
X, normalmente no possvel ver o resultado nal en-
quanto se digita o texto. No entanto, o resultado nal pode ser pr-visualizado
forma mais correcta de pronunciar ouvida na Grcia, onde existe a forma mais spera
de ch como ach e Loch.
2
What you see is what you get O que vs o que recebes.
1.2 Bases 3
no cran depois de processar o cheiro com o L
A
T
E
X. Ento, podem ser feitas
correces para enviar posteriormente o documento para a impressora.
1.2.2 Desenho do Formato
O desenho relacionado com a tipograa bastante trabalhoso. Autores no
qualicados cometem frequentemente erros srios de formatao assumindo
que o desenho de livros , na sua maior parte, uma questo esttica Se um
documento artisticamente bonito, ento est bem desenhado. Mas, como
um documento tem de ler lido e no pendurado numa galeria de pinturas,
a leitura e compreenso de muito maior importncia do que a sua forma.
Exemplos:
O tamanho e a numerao dos cabealhos devem ser escolhidos para
fazer a estrutura de captulos e seces clara ao leitor.
O comprimento das linhas tem de ser sucientemente curto para no
fazer o leitor trocar os olhos, mas sucientemente longo para preencher
uma pgina de uma forma esteticamente bela.
Com sistemas WYSIWYG, os autores criam documentos esteticamente
agradveis sem estrutura, ou em que esta se apresenta de uma forma incon-
sistente. O L
A
T
E
X previne este tipo de erros de formatao ao obrigar os
autores a declarar a estrutura lgica do seu documento, escolhendo depois
o formato mais adequado.
1.2.3 Vantagens e Desvantagens
Quando as pessoas do mundo WYSIWYG conhecem pessoas que usam
L
A
T
E
X, frequentemente discutem as vantagens do L
A
T
E
X em relao a um
processador de texto normal ou o contrrio. A melhor coisa que se pode
fazer quando uma discusso inicia manter a calma, porque este tipo de dis-
cusses saem facilmente dos limites. Mas por vezes no se pode escapar. . .
Ento, aqui esto algumas munies. As principais vantagens do L
A
T
E
X
sobre um processador de texto normal so as seguintes:
Formatos criados prossionalmente esto disponveis, que fazem com
que um documento parea realmente impresso numa tipograa;
A escrita de frmulas matemticas suportada de uma forma conve-
niente;
O utilizador apenas precisa de aprender uma dzia de comandos facil-
mente compreensveis que especicam a estrutura lgica de um docu-
mento. Quase nunca se precisa de atormentar com o formato real do
documento;
4 Coisas Que Precisa de Saber
At estruturas complexas, tais como notas de rodap, referncias, ta-
belas de contedos e bibliograas podem ser facilmente geradas;
Pacotes gratuitos podem ser aplicados a tarefas tipogrcas no su-
portadas pelo L
A
T
E
X bsico. Por exemplo, existem pacotes para in-
cluir grcos PostScript e para imprimir bibliograas conforme os
standards. Muitos destes pacotes esto descritos no The L
A
T
E
X Com-
panion [3];
O L
A
T
E
X encoraja os autores a escrever textos bem estruturados porque
assim que o L
A
T
E
X funciona especicando a estrutura;
T
E
X, o motor de formatao do L
A
T
E
X2
, extremamente portvel e
livre. Desta forma, o sistema funciona em quase todas as plataformas
de hardware existentes.
O L
A
T
E
X tambm tem algumas desvantagens, e penso que um pouco dif-
cil para mim encontrar alguma, mas parece-me que outras pessoas podem
indicar centenas ;-)
L
A
T
E
X no funciona bem para pessoas que tenham vendido a sua
alma. . .
Apesar de alguns parmetros poderem ser ajustados num formato pr-
denido, o desenho de todo um novo formato difcil e demora muito
tempo
3
difcil de escrever documentos mal estruturados e desorganizados;
Embora o seu hamster demonstre alguma dedicao durante os pri-
meiros passos, nunca conseguir digerir completamente o conceito de
marcao lgica.
1.3 Ficheiros L
A
T
E
X
Os cheiros L
A
T
E
X so cheiros de texto ASCII planos. Pode cri-los em
qualquer editor de texto; o cheiro contm o texto do documento assim
como os comandos que dizem ao L
A
T
E
X como formatar o texto.
1.3.1 Espaos
Caracteres brancos como espaos ou caracteres de tabulao (tabs) so
tratados uniformemente como espaos pelo L
A
T
E
X. Caracteres brancos
consecutivos so tratados como um espao. Os espaos no incio de uma
3
Rumores dizem que este um dos pontos chave a ser abordado na verso 3 do L
A
T
E
X.
1.3 Ficheiros L
A
T
E
X 5
linha so geralmente ignorados, e uma simples mudana de linha tratada
da mesma forma que um espao.
Uma linha em branco entre duas linhas de texto dene o m de um
pargrafo. Vrias linhas vazias so tratadas da mesma forma que uma linha
vazia. O texto que se segue um exemplo. Do lado esquerdo apresenta-
se o texto do cheiro a escrever, e do lado direito o resultado depois de
processado.
No interessa se introduz apenas
um ou vrios espaos depois
de uma palavra.
Uma linha em branco inicia um novo
pargrafo.
No interessa se introduz apenas um ou
vrios espaos depois de uma palavra.
Uma linha em branco inicia um novo pa-
rgrafo.
1.3.2 Caracteres Especiais
Os smbolos que se seguem so caracteres reservados que ou tm um signi-
cado especial para o L
A
T
E
X ou no esto disponveis em todos os tipos de
letras. Se os introduzir directamente no seu texto, no sero impressos, mas
causaro o L
A
T
E
X a fazer coisas que no deseja.
# $ % ^ & _ { } ~ \
Como ir ver, estes caracteres podem ser utilizados nos seus documentos
todos da mesma forma, adicionando uma barra invertida como prexo:
\$ \& \% \# \_ \{ \} $ & % # _ { }
Outros smbolos e muitos mais podem ser impressos com comandos es-
peciais em frmulas matemticas ou como acentos. O caracter de barra
invertida () no deve ser introduzido adicionando uma outra barra antes
(\\), porque esta sequncia utilizada para quebrar linhas de texto.
4
1.3.3 Comandos L
A
T
E
X
Os comandos L
A
T
E
X so sensveis s maisculas/minsculas, e tm um de
dois formatos:
Comeam com um backslash
5
(\) e tm um nome que consiste ape-
nas de letras. Os nomes de comandos terminam com um espao, um
nmero ou qualquer outro smbolo no-letra.
4
Tente o comando $\backslash$ em vez da dupla barra, que produz um \.
5
NT: a partir de agora utilizaremos o termo ingls em vez de barra invertida
6 Coisas Que Precisa de Saber
Consistem num backslash e exactamente um caracter no letra.
O L
A
T
E
X ignora espaos em branco aps os comandos. Se deseja um
espao depois de um comando, deve colocar {} e um caracter especial, ou
um comando de espaamento especial depois do nome do comando. O {} faz
com que o L
A
T
E
X pare de comer todos os espaos aps o nome do comando.
Li que o Knuth divide as
pessoas que trabalham com o \TeX{}
em \TeX{}nicos e \TeX pertos.\\
Hoje \today.
Li que o Knuth divide as pessoas que
trabalham com o T
E
X em T
E
Xnicos e
T
E
Xpertos.
Hoje 28 de Abril de 2008.
Alguns comandos precisam de um parmetro que deve ser introduzido
entre chavetas ({}) depois do nome do comando. Outros suportam par-
metros opcionais que so adicionados depois do nome do comando entre
parntesis rectos ([]). Os exemplos seguintes utilizam alguns comandos
L
A
T
E
X. No se preocupe com eles, pois sero explicados mais tarde.
Pode \textsl{apoiar-se} em mim! Pode apoiar-se em mim!
Por favor, comece uma nova linha
exactamente aqui!\newline
Obrigado!
Por favor, comece uma nova linha exacta-
mente aqui!
Obrigado!
1.3.4 Comentrios
Quando o L
A
T
E
X encontra um caracter % ao processar o cheiro, ignora todo
o resto dessa linha, a mudana de linha e todos os espaos no incio da linha
seguinte.
Pode ser utilizado para escrever notas nos cheiros de cdigo, que no
aparecero nas verses impressas.
Este um % estpido
% Melhor: instrutivo <----
exemplo: Supercal%
ifragilist%
icexpialidocious
Este um exemplo: Supercalifragilisticex-
pialidocious
O caracter % tambm pode ser utilizado para quebrar linhas longas onde
no so permitidos espaos nem mudanas de linha.
1.4 Estrutura do Ficheiro 7
Para comentrios mais longos, pode utilizar o ambiente comment dispo-
nibilizado pelo pacote verbatim. Isto signica que, para usar o ambiente
comment tem de adicionar o comando \usepackage{verbatim} ao prem-
bulo do seu documento.
Este outro
\begin{comment}
bastante estpido,
mas instrutivo
\end{comment}
exemplo de como embeber
comentrios nos seus documentos.
Este outro exemplo de como embeber
comentrios nos seus documentos.
Note que isto no funciona dentro de ambientes complexos tal como o
matemtico.
1.4 Estrutura do Ficheiro
Quando o L
A
T
E
X2
mnimo. Um
cheiro um pouco mais complexo mostrado na gura 1.2.
6
A rea entre \documentclass e \begin{document} chamado de prembulo.
8 Coisas Que Precisa de Saber
\documentclass{article}
% esta linha especfica para
% o Portugus e outras lnguas
% com caracteres acentuados.
\usepackage[latin1]{inputenc}
\begin{document}
Pequeno belo.
\end{document}
Figura 1.1: Um cheiro L
A
T
E
X mnimo.
\documentclass[a4paper,11pt]{article}
% Esta linha necessria para
% documentos em lnguas que incluam
% caracteres acentuados.
\usepackage[latin1]{inputenc}
% Define o autor e ttulo
\author{H.~Partl}
\title{Minimalista}
\begin{document}
% Gera o ttulo
\maketitle
% Insere a tabela de contedos
\tableofcontents
\section{Algumas Palavras Interessantes}
Bem, e aqui est o inicio do meu adorado artigo.
\section{Adeus, Mundo!}
\ldots{} e aqui ele acaba.
\end{document}
Figura 1.2: Exemplo de um artigo de jornal real. Note que os comandos que
v neste exemplo sero explicados mais tarde, nesta introduo.
1.5 Uma Sesso de Edio Tpica 9
1.5 Uma Sesso de Edio Tpica
Aposto que deve estar a morrer por poder testar o pequeno exemplo de L
A
T
E
X
mostrado na pgina 8. Aqui est alguma ajuda: o L
A
T
E
X, por si s, no
contm um interface grco, ou botes para clicar. apenas um programa
que mastiga o seu documento. Algumas instalaes do L
A
T
E
X providenciam
um programa grco para interagir com o L
A
T
E
X clicando em certos menus.
Outros sistemas podem exigir um pouco mais de dactilograa, portanto
aqui apresentamos como obrigar o L
A
T
E
X a compilar o seu documento num
sistema baseado em texto. Note que esta descrio assume que existe uma
instalao L
A
T
E
X a funcionar no seu computador.
7
1. Edite/Crie o seu documento L
A
T
E
X. Este cheiro deve ser texto ASCII
sem qualquer tipo de formatao. Em Unix, todos os editores vo
fazer o que deseja. Em Windows, deve ter a certeza que vai gravar o
cheiro em ASCII ou em formato texto. Ao escolher um nome para o
seu cheiro, tenha a certeza de lhe colocar a extenso .tex.
2. Execute o L
A
T
E
X sobre o seu cheiro. Se correr tudo bem, ir acabar
com um cheiro .dvi. Poder ser necessrio correr o L
A
T
E
X vrias
vezes para obter um ndice de contedos e todas as referncias internas
correctamente. Sempre que o seu cheiro tenha um erro o L
A
T
E
X ir
dizer-lhe que erro cometeu e ir parar o seu processamento. Pressione
ctrl-D para voltar linha de comandos.
latex foo.tex
3. Agora pode ver o cheiro DVI. Existem vrias formas de o fazer. Pode
mostrar o cheiro no cran com
xdvi foo.dvi &
Isto funciona apenas em Unix com X11. Se est em Windows, poder
tentar usar o yap (ainda outro pr-visualizadoryet another previ-
ewer). Tambm pode converter o cheiro dvi em PostScript para
imprimir ou ver com o Ghostscript.
dvips -Pcmz foo.dvi -o foo.ps
Se tiver sorte, o seu sistema L
A
T
E
X at trs a ferramenta dvipdf, que
7
Este o caso de qualquer sistema Unix, e . . . Homens a srio usam Unix
10 Coisas Que Precisa de Saber
lhe permite converter o seu cheiro .dvi directamente em pdf.
dvipdf foo.dvi
1.6 O Formato do Documento
1.6.1 Classes de Documentos
A primeira informao que o L
A
T
E
X precisa de saber quando processa um
cheiro o tipo de documento que o autor quer criar. Este tipo especicado
pelo comando \documentclass.
\documentclass[opes]{classe}
Aqui, classe especica o tipo do documento a ser criado. A tabela 1.1
lista as classes de documento explicadas nesta introduo. A distribuio
do L
A
T
E
X2
.
As distribuies de T
E
X modernas incluem um grande nmero de pacotes
j instalados. Se est a trabalhar num sistema Unix, use o comando texdoc
para aceder documentao existente.
1.7 Ficheiros que provavelmente encontrar
Quando trabalhar com o L
A
T
E
X, rapidamente se encontrar num labirinto de
cheiros com vrias extenses e provavelmente sem pista alguma sobre o seu
contedo. Em seguida apresentamos uma lista indicando os vrios tipos de
cheiros que possivelmente encontrar ao trabalhar com T
E
X. Note que esta
tabela no pretende ser uma lista completa de extenses, mas se encontrar
uma que falte e que lhe parea importante, avise!
.tex Ficheiros L
A
T
E
X ou T
E
X. Podem ser compilados com o latex.
.sty Pacote de macros L
A
T
E
X. Este um cheiro que pode carregar no seu
documento L
A
T
E
X utilizando o comando \usepackage.
.dtx T
E
X documentado. Este o formato base para a distribuio de -
cheiros de estilo L
A
T
E
X. Se processar um destes cheiros car com
documentao do pacote contido no cheiro .dtx.
1.7 Ficheiros que provavelmente encontrar 13
Tabela 1.3: Alguns Pacotes Distribudos com o L
A
T
E
X.
doc Permite a documentao de programas L
A
T
E
X.
Descrito em doc.dtx
a
e no The L
A
T
E
X Companion [3].
exscale Fornece verses das letras do modo matemtico regulveis em tama-
nho
Descrito em ltexscale.dtx.
fontenc Especica que codicao de caracteres o L
A
T
E
X deve usar.
Descrito em ltoutenc.dtx.
ifthen Fornece comandos da forma
if. . . then do. . . otherwise do. . . .
Descrito em ifthen.dtx e no The L
A
T
E
X Companion [3].
latexsym Permite aceder ao tipo de letra symbol do L
A
T
E
X. Descrito em
latexsym.dtx e no The L
A
T
E
X Companion [3].
makeidx Fornece comandos para produzir ndices. Descrito na seco 4.3 e
no The L
A
T
E
X Companion [3].
syntonly Processa um documento sem escrever o resultado do processa-
mento.
inputenc Permite a especicao de uma codicao como seja ASCII, ISO
Latin-1, ISO Latin-2, pginas de cdigo 437/850 IBM, Apple Macin-
tosh, Next, ANSI-Windows ou denido pelo utilizador. Descrito em
inputenc.dtx.
a
Este cheiro deve estar instalado no seu sistema, e deve conseguir convert-lo para
um cheiro dvi digitando latex doc.dtx em qualquer directoria em que tiver permisses.
Isto tambm verdade para todos os outros cheiros mencionados nesta tabela.
14 Coisas Que Precisa de Saber
.ins o instalador para os cheiros contidos nos cheiros .dtx com o mesmo
nome. Se zer download de um pacote L
A
T
E
X da Internet, normalmente
car com um cheiro .dtx e um .ins. Corra o L
A
T
E
X no cheiro .ins
para descompactar o cheiro .dtx.
.cls Ficheiros de classe que denem como o seu documento vai aparecer.
Podem ser seleccionados com o comando \documentclass.
.fd Ficheiros de descrio de tipos de letra que comunica ao L
A
T
E
X novos
tipos disponveis.
Os cheiros seguintes so gerados quando corre o L
A
T
E
X no seu documento:
.dvi Device Independent le. Este o resultado principal da utilizao do
L
A
T
E
X. Pode ver o seu contedo com um programa de visualizao de
DVI ou pode envi-lo para a impressora com dvips ou uma aplicao
similar.
.log Contm informao detalhada sobre o que aconteceu da ltima vez
que correu o L
A
T
E
X no seu documento.
.toc Guarda todos os cabealhos. Ser lido da prxima vez que correr o
L
A
T
E
X para produzir a tabela de contedos.
.lof Idntico ao .toc mas para a lista de guras.
.lot Mais uma vez o mesmo para a lista de tabelas.
.aux Outro cheiro que transporta informao de uma utilizao do L
A
T
E
X
at prxima. Entre outras coisas, o cheiro .aux utilizado para
guardar informao associada com referncias cruzadas.
.idx Se o seu documento inclu um ndice, o L
A
T
E
X guarda todas as palavras
que vo para o ndice neste cheiro. Este cheiro deve ser processado
com o makeindex. Visite a seco 4.3 na pgina 74 para mais infor-
mao sobre indexao.
.ind o cheiro processado do .idx, pronto para incluso no seu documento
no prximo ciclo de compilao.
.ilg Ficheiro com os resultados sobre o processamento do makeindex.
1.7.1 Estilo de Pginas
O L
A
T
E
X suporta trs combinaes pr-denidas de cabealho/rodap
chamados de estilo de pginas . O parmetro estilo pode ser um dos denidos
1.8 Grandes Projectos 15
pelo comando
\pagestyle{estilo}
A tabela 1.4 lista os estilos de pginas pr-denidos.
Tabela 1.4: Os Estilos de Pginas Pr-denidos no L
A
T
E
X.
plain imprime o nmero da pgina no fundo da pgina, no centro do ro-
dap. Este o estilo por omisso.
headings imprime o nome do captulo actual e o nmero da pgina no
cabealho de cada pgina, enquanto que o rodap se mantm vazio.
(Este o estilo usado neste documento)
empty coloca quer o cabealho quer o rodap vazios.
possvel alterar o estilo da pgina actual com o comando
\thispagestyle{estilo}
Uma descrio sobre como criar os seus prprios cabealhos e rodaps
pode ser encontrado no The L
A
T
E
X Companion [3] e na seco 4.4 da p-
gina 76.
1.8 Grandes Projectos
Quando trabalha com documentos grandes, possivelmente gostava de sepa-
rar os cheiros de cdigo em vrias partes. O L
A
T
E
X tem dois comandos que
ajudam a atingir este objectivo.
\include{nomedocheiro}
este comando usado no corpo de um documento para incluir o contedo de
outro cheiro (chamado nomedocheiro.tex). O L
A
T
E
X ir iniciar uma nova
pgina antes de processar o contedo deste cheiro.
O segundo comando pode ser utilizado no prembulo. Ele permite in-
dicar ao L
A
T
E
X que apenas os cheiros especicados podem ser includos:
\includeonly{nomedocheiro,nomedocheiro,. . . }
Depois deste comando ser executado no prembulo do documento, ape-
16 Coisas Que Precisa de Saber
nas os comandos \include para os cheiros listados no argumento do co-
mando \includeonly sero realmente includos. Note que no podem existir
espaos entre os nomes dos cheiros e as vrgulas.
O comando \include inicia o texto, includo numa nova pgina. Isto
til quando usa o \includeonly, porque as mudanas de pgina no se
movero, mesmo quando alguns \includes so omitidos. Algumas vezes
isto pode no ser desejvel. Neste caso, deve utilizar o comando
\input{nomedocheiro}
que inclu simplesmente o cheiro especicado, sem fatos brilhantes, nem
cordas agarradas!
Para fazer o L
A
T
E
X vericar rapidamente o seu documento pode utilizar
o pacote syntonly que faz com que o L
A
T
E
X percorra o cheiro vericando
apenas a sintaxe e utilizao de comandos, mas no produz nenhum cheiro.
Como o L
A
T
E
X corre mais depressa neste modo, pode poupar-lhe muito do
seu precioso tempo. A sua utilizao muito simples:
\usepackage{syntonly}
\syntaxonly
Quando precisar de produzir pginas, adicione um comentrio segunda
linha (adicionando um smbolo de percentagem).
Captulo 2
Escrever Texto
Depois de ler o captulo anterior, deve saber as partes bsicas que constituem
um documento L
A
T
E
X2
A incarnao actual do L
A
T
E
X
2.4 Smbolos e Caracteres Especiais
2.4.1 Aspas
No deve utilizar o caracter " para desenhar aspas como o faria numa m-
quina de escrever. Existem duas marcas especiais para abrir e fechar aspas
em tipograa. Em L
A
T
E
X, use dois (acento grave) para abrir aspas e
dois (apstrofe) para fechar aspas. Para aspas simples use apenas um de
cada.
Por favor, pressione a tecla x.Por favor, pressione a tecla x.
Sim, eu sei que a renderizao no a ideal, mas na verdade um acento
grave () para abrir aspas, e um apstrofe () para fechar. Ignore o que o
tipo de letra escolhido possa sugerir.
2.4.2 Traos e Hfens
O L
A
T
E
X conhece quatro tipos diferentes de traos. Pode aceder trs deles
colocando um, dois ou trs - consecutivos. O quarto sinal no um trao
o sinal matemtico menos:
fim-de-semana, segunda-feira\\
pginas 13--67\\
sim---ou no? \\
$0$, $1$ e $-1$
m-de-semana, segunda-feira
pginas 1367
simou no?
0, 1 e 1
Os nomes destes traos so: - hfen, en-dash, em-dash e sinal
de menos.
2.4 Smbolos e Caracteres Especiais 23
2.4.3 Til ()
Um caracter visto frequentemente em endereos de Internet o til. Para
gerar este smbolo em L
A
T
E
X pode usar \~ mas o resultado: no propri-
amente o que queria. Tente desta forma:
http://www.rich.edu/\~{}bush \\
http://www.clever.edu/$\sim$demo
http://www.rich.edu/bush
http://www.clever.edu/demo
2.4.4 Smbolo de Graus ()
O seguinte exemplo mostra como imprimir um smbolo de graus em L
A
T
E
X:
Temperatura: $-30\,^{\circ}\mathrm{C}$,
Daqui a pouco estou a congelar.
Temperatura: 30
\b o oo \t oo
\oe \OE \ae \AE
\aa \AA
\o \O \l \L
\i \j ! ?
2.5 Suporte de Lnguas Internacionais
Se precisa de escrever documentos noutras lnguas que no o ingls, ento
existem trs reas onde o L
A
T
E
X pode ser congurado apropriadamente:
1. Todos os textos gerados automaticamente
6
podem ser adaptados para
a outra lngua. Para a maior parte das lnguas, estas mudanas podem
ser conseguidas utilizando o pacote babel por Johannes Braams.
2. O L
A
T
E
X precisa de saber as regras de hifenizao para a nova lngua.
Conseguir as regras de hifenizao no L
A
T
E
X um pouco mais com-
plicado. Obriga a reconstruir o cheiro de formato activando padres
de hifenizao diferentes. O seu Local Guide [4] deve apresentar mais
informao na realizao desta tarefa.
6
Tabela de Contedos, Lista de Figuras, . . .
26 Escrever Texto
3. Regras tipogrcas especcas de algumas lnguas. Em Francs, por
exemplo, existe um espao obrigatrio antes de cada caracter de dois
pontos (:).
Se o seu sistema j est congurado de forma apropriada, pode activar
o pacote babel adicionando o comando
\usepackage[lngua]{babel}
depois do comando \documentclass. A lista das lnguas que o seu sistema
suporta sero mostradas sempre que o seu compilador inicia. O Babel ir
activar automaticamente as regras apropriadas de hifenizao para a lngua
que escolher. Se o seu formato L
A
T
E
X no suporta hifenizao na lngua que
escolheu, o babel continuar a funcionar mas ir desactivar a hifenizao, o
que ter um efeito bastante negativo na aparncia visual do documento.
Se inicializar o babel com vrias lnguas
\usepackage[lnguaA,lnguaB]{babel}
a ltima lngua que deniu car activa, mas pode usar o comando
\selectlanguage{lnguaA}
para alterar a lngua actual.
Quase todos os sistemas modernos permitem introduzir alguns carac-
teres especiais directamente pelo teclado. Para conseguir manusear uma
variedade de smbolos usados nos diferentes grupos de lnguas e/ou nas di-
ferentes plataformas, o L
A
T
E
X usa o pacote inputenc:
\usepackage[codicao]{inputenc}
Ao utilizar este pacote, dever ter em ateno que outras pessoas podem
no conseguir ler o cdigo do seu documento no seu computador, porque
utilizam uma codicao diferente. Por exemplo, o umlaut alemo em
OS/2 codicado como 132, mas em alguns sistemas Unix utilizando ISO-
LATIN 1 codicado como 228, enquanto que em Cirlico (cp1251 para
Windows) esta letra no existe de todo. Desta forma deve utilizar esta
funcionalidade com cuidado. As seguintes codicaes podem ser teis,
dependendo do tipo de sistema com que est a trabalhar:
7
7
Para aprender mais sobre as codicaes suportadas para lnguas baseadas em Latin
e Cirlico, leia a documentao para o inputenc.dtx e cyinpenc.dtx, respectivamente. A
seco 4.6 ensina a produzir a documentao destes pacotes.
2.5 Suporte de Lnguas Internacionais 27
Sistema codicaes
operativo Latim Cirlico
Mac applemac macukr
Unix latin1 koi8-ru
Windows ansinew cp1251
DOS, OS/2 cp850 cp866nav
Se estiver a usar um documento multilingue com conitos de codicao,
pode desejar mudar para unicode com a ajuda do pacote ucs.
\usepackage{ucs}
\usepackage[utf8x]{inputenc}
ir permitir que crie documentos L
A
T
E
X em utf8x, uma codicao multi-
byte na qual cada caracter pode ser codicado no mnimo como um byte e,
no mximo, quatro bytes.
A codicao de tipos de letra uma matria diferente. Esta, dene em
que posies cada letra guardada dentro da T
E
X-font. Vrias codicaes
podem ser mapeadas numa codicao, o que reduz o nmero de conjuntos
de tipos de letras necessrios. Estas codicaes so manuseadas usando o
pacote fontenc:
\usepackage[codicao]{fontenc}
onde codicao um tipo de codicao de caracteres. possvel carregar
vrias codicaes simultneamente.
A codicao habitual do L
A
T
E
X a OT1, a codicao dos tipos de le-
tra originais do T
E
X: Computer Modern. Contm apenas 128 caracteres
do conjunto de caracteres ASCII de 7 bits. Quando os caracteres acentua-
dos so necessrios, o T
E
X cria-os combinando um caracter normal com o
acento. Embora o resultado parea perfeito, este mtodo pra a hifeniza-
o automtica para palavras que contenham caracteres acentuados. Alm
disso, algumas letras latinas no podem ser criadas combinando um caracter
normal com um acento, j para no falar das letras de alfabetos no latinos
como sejam o Grego ou Cirlico.
Para resolver estes problemas, vrios tipos de letra do tipo CM de 8
bits foram criados. Tipos de letra Extended Cork (EC) na codicao T1
contm letras e caracteres de pontuao para a maioria das lnguas Europeias
baseadas em Latim. O conjunto de tipos de letra LH contm as letras
necessrias para escrever documentos em lnguas cirlicas. Devido ao grande
nmero de glifos cirlicos, estes foram divididos em quatro codicaes
T2A, T2B, T2C, e X2.
8
O conjunto CB contm letras na codicao LGR para
8
A lista de lnguas suportadas por cada uma destas codicaes pode ser encontrada
no [10].
28 Escrever Texto
a composio de texto Grego.
Ao usar estes tipos de letra pode melhorar/activar a hifenizao de tex-
tos no Ingleses. Outra vantagem que estes tipos de letra providenciam as
familias CM em todos os seus formatos, e tamanhos opticalmente aumenta-
dos.
2.5.1 Suporte para Alemo
Aqui vo algumas dicas para aqueles que estejam a criar documentos L
A
T
E
X
em Alemo: pode carregar o suporte para lngua alem com o comando
\usepackage[german]{babel}
Isto far com que o L
A
T
E
X passe a fazer hifenizao para a lngua Alem,
se tiver o seu sistema L
A
T
E
X bem congurado. Tambm ir alterar todo o
texto automtico para alemo. Por exemplo, Chapter ir passar a Ka-
pitel. Um conjunto de novos comandos iro passar a estar disponveis, que
lhe iro permitir introduzir texto alemo de forma mais rpida, mesmo que
no use o pacote inputenc. Repare na tabela 2.3 para alguma inspirao.
Com o inputenc, tudo isto se torna desnecessrio, mas o seu texto tambm
ir car preso num mundo de codicao particular.
Tabela 2.3: Caracteres especiais alemes.
"a "s
" "
"< or \flqq "> or \frqq
\flq \frq
\dq "
Em livros alemes ir encontrar aspas de estilo francs (guillemets).
Os tipgrafos alemes usam-as de forma diferente. Uma frase entre aspas
num livro alemo dever ser assim. Na parte da Sua que fala alemo,
os tipgrafos usam guillemets da mesma forma que os Franceses.
Um grande problema surge do uso de comandos como \flq: se usar
um tipo de letra OT1 (que o tipo de letra por omisso) as guillemets
iro parecer o smbolo matemtico , que ir revoltar um estmago de
tipgrafo. Os tipos de letra codicados em T1, por outro lado, no contm
os smbolos necessrios. Assim, se est a usar este tipo de aspas, tenha a
certeza de que est com a codicao T1. (\usepackage[T1]{fontenc})
2.5 Suporte de Lnguas Internacionais 29
2.5.2 Suporte para Portugus
By Alberto Simes <albie@alfarrabio.di.uminho.pt>
Texto Automtico
Como acontece com outras lnguas, o pacote babel suporta a lngua portu-
gusa. Isto signica que ao colocar no prembulo do documento a linha
\usepackage[portuges]{babel}
todo o texto gerado automaticamente traduzido para Portugus. Por
exemplo, chapter ir passar a captulo, table of contents a contedo.
Da mesma forma, o comando \date passar a apresentar a data actual em
Portugus.
Caracteres Acentuados
J se torna fcil utilizar caracteres latin-1 directamente no cdigo fonte do
seu documento. Para saber como congurar o teclado para permitir inserir
estes caracteres em Linux, visite http://gil.di.uminho.pt. Para que o
L
A
T
E
X no se queixe, active o pacote fontenc da seguinte forma:
\usepackage[T1]{fontenc}
Depois, use o L
A
T
E
X da forma habitual!
Hifenizao
Nas distribuies do L
A
T
E
X em Linux utilizadas at agora, nunca encontrei
uma com a hifenizao automtica para portugus activada quando se usa
o pacote babel. No entanto, a sua activao extremamente simples se tem
acesso aplicao texconfig. Tente execut-la (como administrador do
sistema) e, caso no a encontre, verique se no estar escondida algures,
como em /usr/share/texmf/bin/texconfig.
Depois de executar a aplicao, e aps alguns segundos de processa-
mento, aparecer uma janela com vrias opes. Escolha a opo de hifeni-
zao (HYPHEN - hyphenation). Na nova janela, escolha a opo latex, que
abrir o editor vi com um cheiro de congurao.
Agora deve procurar a palavra portuges neste cheiro. Se no est ha-
bituado a usar este editor, tecle / seguido de portuges. O cursor aparecer
sobre uma linha da forma:
%portuges pt8hyph.tex
30 Escrever Texto
Repare no smbolo de comentrio (smbolo de percentagem). Se existe,
signica que a hifenizao portuguesa est desligada. Se seguiu as instruc-
es dadas, tecle x. Caso contrrio, no precisa de alterar nada. Esta linha
deve passar a:
portuges pt8hyph.tex
Para terminar, escreva :wq. O sistema comear a processar este cheiro.
Espere at que volte a aparecer a janela inicial e escolha a opo para sair
(Exit).
2.5.3 Suporte para Francs
By Daniel Flipo <daniel.flipo@univ-lille1.fr>
Alguns conselhos para aqueles que desejem criar documentos em Francs
usando o L
A
T
E
X. Pode carregar o suporte para o Francs usando o comando:
\usepackage[frenchb]{babel}
Note que, por razes histricas, o nome da opo do pacote babel para
o Francs frenchb ou francais mas nunca french.
Esta opo inicia a hifenizao Francesa, se tiver o seu LaTeX con-
gurado de forma correcta. Tambm altera todo o texto automtico para
francs: \chapter escreve Chapitre, \today escreve a data actual em
francs, e assim sucessivamente. Um grande conjunto de novos comandos
passam a existir, que lhe permitem escrever cheiros em Francs de forma
mais simples. D uma olhadela tabela 2.4 para inspirao.
Tabela 2.4: Comandos especiais para Francs.
\og guillemets \fg{} guillemets
M\up{me}, D\up{r} M
me
, D
r
1\ier{}, 1\iere{}, 1\ieres{} 1
er
, 1
re
, 1
res
2\ieme{} 4\iemes{} 2
e
4
es
\No 1, \no 2 N
o
1, n
o
2
20~\degres C, 45\degres 20 C, 45
\bsc{M. Durand} M. Durand
\nombre{1234,56789} 1 234,567 89
Tambm ir reparar que o formato das listas muda quando usa a lngua
francesa. Para car a conhecer tudo o que a opo franchb do pacote babel
2.5 Suporte de Lnguas Internacionais 31
faz e como pode alterar o seu funcionamento, execute o L
A
T
E
X no cheiro
frenchb.dtx e leia o cheiro produzido: frenchb.dvi.
2.5.4 Suporte para Coreano
9
Para usar o L
A
T
E
X para escrever Coreano, precisamos de resolver trs pro-
blemas:
1. Temos de ser capazes de editar cheiros L
A
T
E
X em coreano. Estes -
cheiros devem ser em formato de texto puro, mas porque o Coreano usa
os seus prprios caracteres fora do reportrio do US-ASCII, eles iro
parecer bastante estranhos num editor ASCII comum. As duas codi-
caes mais usadas para textos em Coreano so EUC-KR e a sua ex-
tenso compatvel usada no MS-WIndows Coreano, CP949/Windows-
949/UHC. Nestas codicaes, cada caracter US-ASCII representa o
seu caracter ASCII normal semelhante a outras codicaes compat-
veis como a ISO-8859-x, EUC-JP, Big5 ou Shift_JIS. Por outro lado,
slabas Hangul, Hanjas (caracteres Chineses usados na Coreia), Han-
gul Jamos, Hiraganas, Katakanas, Grego e caracteres Cirlicos e ou-
tros smbolos e letras desenhadas pelo KS X 1001 so representados
por dois octetos consecutivos. O primeiro tem o seu conjunto MSB.
At ao meio dos 1990s, demorou uma quantidade de tempo e traba-
lho considervel para criar um ambiente Coreano num sistema ope-
rativo no Coreano. Pode dar uma olhadela ao agora muito antigo
http://jshin.net/faq para ter uma ideia de como se usava Coreano
num sistema operativo no Coreano no meio dos 1990s. Nestes dias,
os trs principais sistemas operativos (Mac OS, Unix, Windows) vem
equipados com suporte multilingue bastante decente, e internaciona-
lizao de forma que editar um texto em Coreano j no tanto um
problema, mesmo em sistemas operativos no coreanos.
2. O T
E
X e o L
A
T
E
X foram originalmente escritos para lnguas com menos
de 256 caracteres no seu alfabeto. Para os fazer funcionar para lnguas
com consideravelmente mais caracteres como o Coreano
10
ou Chins,
9
Considerando o nmero de questes que os utilizadores de L
A
T
E
X Coreanos tm de ter
em conta, esta seco foi escrita por Karnes KIM da equipa de graduo do lshort para
Coreano. Foi traduzida para Ingls por SHIN Jungshik e encolhida por Tobi Oetiker.
10
O Hangul Coreano uma lngua alfabtica com 14 consoantes bsicas e 10 vogais
bsicas (Jamos). De forma diferente das lnguas latinas ou cirlicas, cada caracter in-
dividual tem de ser colocado em caixas rectangulares com um tamanho similar ao dos
caracteres Chineses. Cada caixa representa uma slaba. Um nmero ilimitado de sla-
bas pode ser formado deste conjunto nito de vogais e consoantes. Os standards mo-
dernos da ortograa Coreana (na Coreia do Sul e na Coreia do Norte), colocam algu-
mas restries na formao destas caixas. Assim, apenas um conjunto nito de sila-
bas ortogracamente correctas existem. A codicao de caracteres coreanos dene um
cdigo individual para cada uma destas slabas (KS X 1001:1998 e KS X 1002:1992).
32 Escrever Texto
um mecanismo de sub-tipos de letra foi desenvolvido. Divide uma letra
CJK com centenas ou dezenas de centenas de glifos num conjunto de
sub-tipos com 256 glifos cada. Para o Coreano, existem trs pacotes
bastante usados; HL
A
T
E
X por UN Koaunghi, hL
A
T
E
Xp por CHA Jae-
choon e o pacote CJK por Werner Lemberg.
11
HL
A
T
E
X e hL
A
T
E
Xp so
especcos para o Coreano e disponibilizam o Coreano sobre o suporte
de tipos de letras. Ambos conseguem processar texto Coreano codi-
cado em EUC-KR. HL
A
T
E
X pode at processar cheiros codicados
em CP949/Windows-949/UHC e UTF-8 quando usado com ou .
O pacote CJK no especco para Coreano. Consegue processar -
cheiros em UTF-8 assim como em vrias codicaes CJK incluindo
EUC-KR e CP949/Windows-949/UHC. Pode ser usado para escrever
documentos com contedo multi-lingue (especialmente Chins, Japo-
ns e Coreano). O Pacote CJK no tem localizao em Coreano como
a oferecida pelo HL
A
T
E
X e no disponibiliza tantos tipos de letra Co-
reana como o HL
A
T
E
X.
3. O ltimo objectivo de usar programas como o T
E
X e o L
A
T
E
X para
obter documentos esteticamente satisfatrios. Sem dvida que o
elemento mais importante o tipo de letra bem desenhado. A distri-
buio HL
A
T
E
X inclui tipos de letra UHC PostScript de 10 famlias
diferentes e tipos Munhwabu
12
de 5 famlias diferentes. O pacote CJK
funciona com um conjunto de tipos de verses anteriores ao HL
A
T
E
X e
tambm consegue usar tipos de letra Bitstream cyberbit TrueType.
Para usar o pacote HL
A
T
E
X para escrever o seu texto em Coreano, inclua
a seguinte declarao no prembulo do documento:
\usepackage{hangul}
Este comando liga a localizao para Coreano. Os cabealhos de cap-
tulos, seces, seces, ndices de contedos ou guras, todos eles iro ser
O Hangul passa a ser tratado como nos sistemas de escrita do Chins ou do Japo-
ns, com centenas de caracteres ideogrcos. O ISO 10646/Unicode oferece ambas as
formas de representar Hangul usado para o Coreano moderno codicando Conjoining
Hangul Jamos (alfabetos: http://www.unicode.org/charts/PDF/U1100.pdf) em adi-
o total codicao das slibas ortogracamente permitidas em Coreano moderno
(http://www.unicode.org/charts/PDF/UAC00.pdf). Um dos maiores desaos na tipo-
graa Coreana com L
A
T
E
X e sistemas similares o suporte para Coreano mais antigoe
possvelmente Coreano do futuroonde as slabas s podem ser representadas juntando
Jamos em Unicode. Espera-se que futuros motores do T
E
X como e iro, eventual-
mente, providenciar solues de forma a que alguns linguistas e historidores Coreanos iro
desistir do MS Word que j tem um bom suporte para Coreano antigo.
11
Podem ser obtidos em language/korean/HLaTeX/
language/korean/CJK/ e http://knot.kaist.ac.kr/htex/
12
Ministrio da Cultura Coreano.
2.5 Suporte de Lnguas Internacionais 33
Tabela 2.5: Prembulo para documentos em Grego.
\usepackage[english,greek]{babel}
\usepackage[iso-8859-7]{inputenc}
traduzidos para Coreano, e a formatao do documento ir seguir as conven-
es Coreanas. O pacote tambm contempla uma seleco de partculas
automtica. Em Coreano, existem pares de partculas ps-xas gramatica-
mente equivalentes mas diferentes em forma. Qual correcto depende se a
slaba precedente acaba em vogal ou consoante. ( um pouco mais complexo
que isto, mas deve estar a ter uma boa ideia.) Coreanos nativos no tm
problemas a escolher a partcula correcta, mas o T
E
X no pode determinar
que particula usar para referncias ou outro texto automtico que ir mu-
dar ao editar o documento. Esta seleco de partculas manual gera algum
esforo em colocar as partculas cada vez que adiciona ou remove refern-
cias ou simplesmente baralha alguma das partes do seu documento. HL
A
T
E
X
alivia os seus utilizadores deste processo aborrecido e delicado.
No caso de no precisar das caractersticas de localizao do Coreano, e
quer apenas escrever em Coreano, pode usar a seguinte linha no prembulo
do seu documento,
\usepackage{hfont}
Para maior detalhe sobre o uso de Coreano com HL
A
T
E
X, consultar o
HL
A
T
E
X Guide. Veja tambm a pgina do grupo Coreano de utilizadores de
T
E
X (KTUG) em http://www.ktug.or.kr/. Tambm existe uma traduo
Coreana deste manual.
2.5.5 Suporte para Grego
By Nikolaos Pothitos <pothitos@di.uoa.gr>
Veja a tabela 2.5 para o prembulo que precisa para escrever na lngua
grega. Este prembulo activa a hifenizao e altera todo o texto automtico
para Grego.
13
Um conjunto de novos comandos cam disponveis, que lhe permite es-
crever em Grego de forma facilitada. Para alternar temporariamente entre
Grego e Portugus, e vice-versa, pode usar os comandos \textlatin{texto
em caracteres latinos} e \textgreek{texto grego}. Ambos recebem um ar-
gumento que colocado no documento nal com a codicao correcta. Para
13
Se seleccionar a opo utf8x para o pacote inputenc pode digitar directamente ca-
racteres unicode Gregos e politnicos Gregos.
34 Escrever Texto
zonas de maior dimenso pode usar o comando \selectlanguage{...} des-
crito numa seco anterior. Veja a tabela 2.6 para alguma pontuao Grega.
Para o smbolo do Euro use \euro.
Tabela 2.6: Caracteres Especiais Gregos.
; ? ;
(( ))
2.5.6 Suporte para Cirlico
By Maksym Polyakov <polyama@myrealbox.com>
A verso 3.7h do babel inclu suporte para as codicaes T2* e para
escrever texto Bulgaro, Russo e Ucraniano usando letras cirlicas.
O suporte para o cirlico baseado nos mecanismos habituais do L
A
T
E
X
atravs dos pacotes fontenc e inputenc. Mas, se for usar cirlico em modo
matemtico, ir precisar de carregar o pacote mathtext antes do fontenc:
14
\usepackage{mathtext}
\usepackage[T1,T2A]{fontenc}
\usepackage[koi8-ru]{inputenc}
\usepackage[english,bulgarian,russian,ukranian]{babel}
Geralmente, o babel ir escolher automaticamente a codicao por omis-
so para as trs lnguas, ou seja, T2A. No entanto, os documentos no esto
restringidos a uma nica codicao. Para um documento multi-lingue que
use lnguas cirlicas e lnguas latinas faz sentido incluir a codicao latina
explicitamente. O babel ir tratar de mudar para a codicao necessria
sempre que uma lngua diferente seleccionada dentro do documento.
Alm de activar as hifenizaes, traduzir automaticamente o texto ge-
rado, e activar algumas regras tipogrcas especfcias da lngua (como o
\frenchspacing), o babel providencia alguns comandos para permitir es-
crever de acordo com os standards das lnguas Bulgara, Russa ou Ucraniana.
Para estas trs lnguas, a pontuao especca providenciada: um hi-
fen em cirlico para o texto ( ligeiramente diferente do latino, e separado
por pequenos espaos), hifen para discurso directo, aspas, e comandos para
facilitar a hifenizao. Veja a tabela 2.7.
As opes para Russo e Ucraniano do babel denem o comando \Asbuk
e \asbuk, que funcionam como \Alph e \alph, mas produzem uma letra
14
Se usar os pacotes A
M
S-L
A
T
E
X, carregue-os antes do fontenc e do babel.
2.6 O Espao entre Palavras 35
Tabela 2.7: As denies extra feitas pelas opes Bulgaro, Russa, e Ucra-
niana do babel
"| desliga as ligaduras nesta posio.
"- um hifen explicito, permitindo hifenizao no resto da palavra
"--- Cyrillic emdash em texto plano.
"--~ Cyrillic emdash em nomes compostos.
"--* Cyrillic emdash para representar discurso directo.
"" como "-, mas no produz o smbolo do hifen (para palvras compostas
com hifen e.g.x-""y ou outros smbolos como activar/desactivar).
"~ para uma marca de palavra composta sem ponto de quebra.
"= para uma marca de palavra composta com um ponto de quebra per-
mitindo hifenizao de palavras compostas.
", pequeno espao para inciais com um ponto de quebra.
" para as aspas duplas Alems (esquerdas) (parece-se com ,,).
" para as aspas duplas Alems (direitias) (parece-se com ).
"< para as aspas esquerdas Francesas (parece-se com <<).
"> para as aspas direitas Francesas (parece-se com ).
maiscula e pequenas letras dos alfabetos Russo e Ucranianos (a que for a
lngua activa no documento). A opo para Bulgaro do babel providenciar
o comando \enumBul e \enumLat (\enumEng), que fazem o \Alph e \alph
produzir letras dos alfabetos Bulgaro ou Latinos. O comportamento por
omisso do \Alph e \alph para a lngua Bulgara produzir letras do alfabeto
Bulgaro.
2.6 O Espao entre Palavras
Para obter no resultado uma margem direita alinhada, o L
A
T
E
X insere vrias
quantidades de espao entre palavras. Insere um pouco mais de espao no
m das frases, visto que faz o texto car mais legvel. O L
A
T
E
X assume que
as frases acabam com pontos nais, de interrogao ou de exclamao. Se
o ponto nal seguir uma letra maiscula, esta no tomada como um m
de frase, visto que pontos aps letras maisculas ocorrem, normalmente, em
abreviaturas.
Alguma excepo a estas regras deve ser especicada pelo autor do do-
cumento. Um backslash antes de um espao gera um espao que no ser
alargado. Um til ~ gera um espao que no pode ser alargado e que, adici-
onalmente, probe uma mudana de linha na respectiva posio. O comando
\@ antes de um ponto especica que esse ponto termina uma frase, mesmo
que se lhe siga uma letra maiscula.
36 Escrever Texto
O Sr~Smith estava contente de a ver\\
conforma a fig.~5\\
Eu gosto de BASIC\@. E tu?
O Sr Smith estava contente de a ver
conforma a g. 5
Eu gosto de BASIC. E tu?
O espao adicional aps pontos pode ser desactivado com o comando
\frenchspacing
que diz ao L
A
T
E
X para no inserir mais espao depois de ponto do que em
relao a qualquer outro caracter. Isto muito comum em lnguas no
inglesas, excepto em bibliograas. Se usar \frenchspacing, o comando \@
no necessrio.
2.7 Ttulos, Captulos e Seces
Para ajudar o leitor a encontrar a linha de leitura ao longo do documento,
deve dividi-lo em captulos, seces e subseces. O L
A
T
E
X permite que se
faa isto com comandos especiais que tomam o ttulo como seu argumento.
Agora, consigo que os use na ordem correcta.
Os comandos de diviso do texto que esto disponveis para a classe
article so:
\section{...}
\subsection{...}
\subsubsection{...}
\paragraph{...}
\subparagraph{...}
Quando precisa de dividir o seu documento em partes sem inuenciar a
numerao de seces ou captulos pode usar
\part{...}
Se estiver a trabalhar com as classes report ou book, um comando
adicional para seccionar ao nvel de topo, torna-se disponvel
\chapter{...}
Como a classe article no sabe nada acerca de captulos, torna-se muito
fcil adicionar artigos como captulos num livro. O espaamento entre sec-
es, a numerao e o tamanho de letra dos ttulos sero colocados automa-
ticamente pelo L
A
T
E
X.
2.7 Ttulos, Captulos e Seces 37
Dois destes comandos so ligeiramente especiais:
O comando \part no inuencia a numerao de sequncia dos cap-
tulos;
O comando \appendix no leva nenhum argumento. Apenas muda a
numerao de captulos para letras.
15
O L
A
T
E
X cria um tabela de contedos pegando nos ttulos de seco e no
nmero de pgina do ltimo ciclo de compilao do documento. O comando
\tableofcontents
expande-se para uma tabela de contedos no stio onde for invocado. Um
novo documento deve ser compilado (L
A
T
E
Xado) duas vezes para obter uma
tabela de contedos correcta. Algumas vezes, pode ser necessrio compilar
o documento uma terceira vez. O L
A
T
E
X avisar quando isto for necessrio.
Todos os comandos listados acima tambm existem em verses estre-
ladas. Uma verso estrelada do comando construda adicionando uma
estrela * aps o nome do comando. Estas verses geram ttulos que no
aparecero na tabela de contedos e que no sero numerados. O comando
\section{Ajuda}, por exemplo, pode passar a \section*{Ajuda}.
Normalmente, o ttulo da seco aparecer na tabela de contedos exac-
tamente como introduziu no texto. Algumas vezes isto no possvel por o
ttulo ser demasiado grande e a tabela de contedos no car legvel. Ento,
a entrada que aparecer na tabela de contedos pode ser especicada como
um argumento opcional antes do verdadeiro ttulo.
\chapter[Ttulo pequeno para a tabela de contedos]{Um
ttulo grande e especialmente aborrecido, que aparece
na pgina propriamente dita.}
O ttulo do documento como um todo gerado invocando o comando
\maketitle
Os contedos do ttulo tm de ser denidos pelos comandos
\title{...}, \author{...} e opcionalmente \date{...}
antes de chamar o \maketitle. No argumento de \author, pode escrever
vrios nomes separados pelo comando \and.
15
Para o estilo article, muda a numerao de seces.
38 Escrever Texto
Um exemplo de alguns dos comandos mencionados acima pode ser en-
contrado na gura 1.2 da pgina 8.
Para alm destes comandos, o L
A
T
E
X2
36.46
(
80662.7
\begin{tabular}{|c|c|}
\hline
\multicolumn{2}{|c|}%
{\textbf{Ene}}\\
\hline
Mene & Muh! \\
\hline
\end{tabular}
Ene
Mene Muh!
Texto escrito no ambiente tabular ca sempre junto numa nica pgina.
Se quer escrever tabelas longas, possivelmente dever dar uma olhadela ao
pacote supertabular e ao longtabular.
2.12 Corpos Flutuantes
Hoje, a maior parte das publicaes contm um grande nmero de guras e
tabelas. Estes elementos precisam de um tratamento especial, porque no
podem ser partidos entre pginas. Uma maneira seria comear uma nova
pgina sempre que uma gura ou uma tabela demasiado grande para caber
na pgina actual. Esta abordagem pode deixar pginas parcialmente vazias,
o que ca muito mal.
A soluo para este problema fazer as guras ou tabelas que no cabem
na pgina actual utuar para uma pgina posterior, enquanto se preenche
a pgina actual com o texto seguinte. O L
A
T
E
X oferece dois ambientes para
corpos utuantes; um para tabelas e um para guras. Para ter todas as
vantagens destes dois ambientes, importante perceber de uma forma apro-
ximada como o L
A
T
E
X maneja estas utuaes internamente. Doutro modo,
estes elementos podem vir a ser uma grande fonte de frustrao porque o
L
A
T
E
X nunca os colocar onde os deseja.
Primeiro, vamos dar uma vista de olhos aos comandos que o L
A
T
E
X a-
presenta para corpos utuantes:
46 Escrever Texto
Qualquer material incluso num ambiente figure ou table ser tratado
como uma matria utuante. Ambos os ambientes suportam parmetros
adicionais
\begin{figure}[especicao de colocao] \begin{table}[. . . |]|
chamados de especicao de colocao. Estes parmetros so usados para
dizer ao L
A
T
E
X a localizao para a qual o corpo utuante se pode mover.
A especicao de colocao construda por um conjunto de caracteres de
permisses de colocao de corpos utuantes. Veja a tabela 2.8.
Uma tabela pode ser iniciada com a seguinte linha
\begin{table}[!hbp]
A especicao de colocao [!hbp] indica ao L
A
T
E
X para colocar a tabela
exactamente aqui (h) ou no fundo (b) de alguma pgina ou em alguma
pgina especial para corpos utuantes (p), e tudo isto mesmo que no que
muito bonito (!). Se nenhuma especicao for dada, assumida a [tbp].
O L
A
T
E
X ir colocar cada corpo utuante de acordo com a especicao
de colocao dada pelo autor. Se um destes no pode ser colocado na pgina
actual, ser enviado para a la de espera correspondente
21
(para guras ou
tabelas). Quando uma nova pgina iniciada, o L
A
T
E
X verica primeiro se
possvel preencher uma pgina especial de utuaes com os objectos da
lista de espera. Se isto no possvel, o primeiro objecto de cada uma das
las de espera tratado como se tivesse ocorrido naquele momento no texto:
o L
A
T
E
X tenta de novo colocar de acordo com a respectiva especicao de
colocao (excepto o h, que no volta a ser vlido). Qualquer objecto que
21
Estas las so FIFOrst in rst out, o primeiro a entrar o primeiro a sair
Tabela 2.8: Permisses de Colocao de Corpos Flutuantes.
Espec. Permisso para colocar em. . .
h here aqui neste exacto local onde ocorreu no
meio do texto. til para pequenos objectos.
t no topo da pgina
b no fundo (bottom) da pgina
p numa pgina especial apenas com corpos
utuantes..
! sem considerar a maior parte dos parmetros in-
ternos
a
que podem fazer com que o corpo utu-
ante no seja colocado.
a
Como o nmero mximo destes objectos permitidos por pgina.
2.12 Corpos Flutuantes 47
ocorra no texto ser enviado para a la de espera. O L
A
T
E
X mantm estri-
tamente a ordem original em que aparecem cada um dos tipos de objectos
utuantes. Esta a razo pela qual uma gura que no pode ser colocada
empurra todas as outras guras para o m do documento. Portanto:
Se o L
A
T
E
X no est a colocar os objectos utuantes como espe-
rava normal que seja apenas um deles numa das las de espera
que esteja a empatar o servio!
Enquanto que possvel dar ao L
A
T
E
X especicadores de colocao ni-
cos, isto causa problemas. Se o objecto no cabe na localizao pretendida,
ca preso, a bloquear os objectos seguintes. Em particular, nunca deve uti-
lizar apenas a opo [h]esta to m que em verses recentes do L
A
T
E
X
automaticamente substituda por [ht].
Depois de ter explicado a parte difcil, aqui esto mais algumas coisas a
mencionar sobre os ambientes table e figure. Com o comando
\caption{legenda}
pode denir uma legenda para o objecto. Um nmero ser automaticamente
criado juntamente com o texto Figure ou Table e adicionado no incio
da legenda.
Os dois comandos
\listoffigures e \listoftables
funcionam de forma anloga ao comando \tableofcontents, imprimindo
uma lista de guras ou tabelas, respectivamente. Nestas listas, a legenda
completa ser repetida. Se tem tendncia a usar grandes legendas, deve
denir uma verso mais curta para as listas. Isto pode ser feito introduzindo
a verso mais pequena entre parntesis rectos depois do comando \caption.
\caption[Pequeno]{Looooooooooooooooooongoooooooooooo}
Com \label e \ref, pode criar uma referncia para o corpo utuante
no meio do texto.
O seguinte exemplo desenha um quadrado e insere-o no documento. Pode
usar isto se desejar reservar espao para imagens que vai colar no documento
pronto.
Figura~\ref{branco} um exemplo de Arte-Pop.
\begin{figure}[!hbp]
\makebox[\textwidth]{\framebox[5cm]{\rule{0pt}{5cm}}}
\caption{Cinco por Cinco em Centmetros.\label{branco}}
\end{figure}
48 Escrever Texto
No exemplo anterior, o L
A
T
E
X ir tentar mesmo (!) colocar a gura jus-
tamente aqui ( h ).
22
Se isto no possvel, ento tenta colocar a gura
no fundo ( b ) da pgina. Se falhar a colocao da gura na pgina actual,
determina se possvel criar uma pgina de corpos utuantes que contenha
esta gura e possivelmente algumas tabelas da la de espera respectiva. Se
no existir material suciente para esta pgina especial, o L
A
T
E
X inicia uma
nova pgina, e uma vez mais trata-a como se tivesse ocorrido nesse momento
no texto.
Em algumas circunstncias, pode ser necessrio usar o comando
\clearpage ou mesmo o \cleardoublepage
que ordenam o L
A
T
E
X a colocar imediatamente no documento todos os obje-
ctos restantes das las de espera e depois iniciar uma nova pgina. O
\cleardoublepage obriga a comear a pgina do lado direito.
Ir aprender a incluir desenhos PostScript no seu documento L
A
T
E
X2
n
k=1
1
k
2
=
2
6
\begin{displaymath}
\lim_{n \to \infty}
\sum_{k=1}^n \frac{1}{k^2}
= \frac{\pi^2}{6}
\end{displaymath}
lim
n
n
k=1
1
/
2
=
2
6
Existem diferenas entre o modo matemtico e o modo de texto. Por
exemplo, no modo matemtico:
1. A maior parte dos espaos e mudanas de linha no tm qualquer signi-
cado, visto que todos os espaos ou so determinados logicamente da
expresso matemtica ou tm de ser especicados utilizando comandos
tais como \,, \quad ou \qquad.
3.2 Agrupar em Modo Matemtico 51
2. Linhas em branco no so permitidas. Apenas um pargrafo por fr-
mula.
3. Cada letra considerada como sendo o nome de uma varivel e ser
escrita como uma. Se quer escrever um texto normal dentro de uma
frmula (texto verticalmente direito com espaamento normal) ento
tem de introduzir o texto usando o comando \textrm{...} (veja tam-
bm a seco 3.7 na pgina 59).
\begin{equation}
\forall x \in \mathbf{R}:
\qquad x^{2} \geq 0
\end{equation}
r R : r
2
0 (3.2)
\begin{equation}
x^{2} \geq 0\qquad
\textrm{para todo }x\in\mathbf{R}
\end{equation}
r
2
0 para todo r R (3.3)
Os matemticos podem ser muito esquisitos com os smbolos que usam:
convencionalmente usa-se blackboard bold, que so obtidos usando \mathbb
do pacote amsfonts ou amssymb. O ltimo exemplo pode ser traduzido em
\begin{displaymath}
x^{2} \geq 0\qquad
\textrm{para todo }x\in\mathbb{R}
\end{displaymath}
r
2
0 para todo r 1
3.2 Agrupar em Modo Matemtico
A maior parte dos comandos de modo matemtico funcionam apenas em
relao ao caracter seguinte. Por isso, se quer que um comando afecte vrios
caracteres, tem de os agrupar usando chavetas: {...}.
\begin{equation}
a^x+y \neq a^{x+y}
\end{equation}
o
x
+ j ,= o
x+y
(3.4)
3.3 Construindo Blocos de Frmulas
Matemticas
Nesta seco sero descritos os comandos mais importantes usados em im-
presses matemticas. D uma olhadela seco 3.10 na pgina 63 para
uma lista detalhada de comandos para escrever smbolos matemticos.
52 Frmulas Matemticas
As letras gregas minsculas so introduzidas como \alpha, \beta,
\gamma, . . . , as maisculas, so introduzidas como \Gamma, \Delta, . . .
2
$\lambda,\xi,\pi,\mu,\Phi,\Omega$ , , , j, ,
Expoentes e ndices podem ser especicados usando os caracteres ^
e _.
$a_{1}$ \qquad $x^{2}$ \qquad
$e^{-\alpha t}$ \qquad
$a^{3}_{ij}$\\
$e^{x^2} \neq {e^x}^2$
o
1
r
2
c
t
o
3
ij
c
x
2
,= c
x2
A raz quadrada introduzida como \sqrt; a raz de ndice n gerada
com \sqrt[n]. O tamanho do sinal de raz determinado automaticamente
pelo L
A
T
E
X. se apenas precisa do smbolo, deve utilizar \surd.
$\sqrt{x}$ \qquad
$\sqrt{ x^{2}+\sqrt{y} }$
\qquad $\sqrt[3]{2}$\\[3pt]
$\surd[x^2 + y^2]$
r
_
r
2
+
j
3
[r
2
+ j
2
]
Os comandos \overline e \underline criam linhas horizontais di-
rectamente por cima ou por baixo de uma expresso.
$\overline{m+n}$ : + n
Os comandos \overbrace e \underbrace criam chavetas horizontais
longas por cima ou por baixo de uma expresso.
$\underbrace{a+b+\cdots+z}_{26}$
o + / + + .
. .
26
Para adicionar acentos matemticos, tais como pequenas setas ou sinais
til a variveis, pode usar os comandos dados na tabela 3.1 na pgina 63.
Chapus largos e tils a cobrir vrios caracteres so gerados com \widetilde
e \widehat. O smbolo d um caracter de derivada.
\begin{displaymath}
y=x^{2}\qquad y=2x\qquad y=2
\end{displaymath}
j = r
2
j
= 2r j
= 2
2
No existe um Alpha denido em L
A
T
E
X2
1
2
Nomes de funes do estilo logaritmo so escritos frequentemente num
tipo de letra vertical e no em itlico como as variveis. Desta forma o
L
A
T
E
X tem os seguintes comandos para escrever os nomes das funes mais
importantes:
\arccos \cos \csc \exp \ker \limsup
\arcsin \cosh \deg \gcd \lg \ln
\arctan \cot \det \hom \lim \log
\arg \coth \dim \inf \liminf \max
\sinh \sup \tan \tanh \min \Pr
\sec \sin
\[\lim_{x \rightarrow 0}
\frac{\sin x}{x}=1\]
lim
x0
sin r
r
= 1
Para a funo mdulo, existem dois comandos: \bmod para o operador
binrio o mod / e \pmod para expresses como r o (mod /).
$a\bmod b$\\
$x\equiv a \pmod{b}$
o mod /
r o (mod /)
Uma fraco escrita com o comando \frac{...}{...}. Frequente-
mente a forma 1,2 prefervel, porque ca melhor para pequenas pores
de material fraccionado.
54 Frmulas Matemticas
$1\frac{1}{2}$~horas
\begin{displaymath}
\frac{ x^{2} }{ k+1 }\qquad
x^{ \frac{2}{k+1} }\qquad
x^{ 1/2 }
\end{displaymath}
1
1
2
horas
r
2
/ + 1
r
2
k+1
r
1/2
Para escrever coecientes binomiais ou estruturas similares, pode usar o
comando \binom do pacote amsmath.
\newcommand{\newatop}[2]{\genfrac{}{}{0pt}{1}{#1}{#2}}.)
\begin{displaymath}
\binom{n}{k}\qquad\mathrm{C}_n^k
\end{displaymath}
_
n
/
_
C
k
n
Para relaes binrias pode ser til colocar smbolos uns por cima dos
outros. O \stackrel coloca o smbolo dado no primeiro argumento no
tamanho de expoente sobre o segundo, que escrito na sua posio usual.
\begin{displaymath}
\int f_N(x) \stackrel{!}{=} 1
\end{displaymath}
_
)
N
(r)
!
= 1
O integral gerado com \int, o somatrio com \sum e o produtrio
com \prod. Os limites superiores e inferiores so especicados com ^ e _,
tal como os sub-escritos e os super-escritos.
3
\begin{displaymath}
\sum_{i=1}^{n} \qquad
\int_{0}^{\frac{\pi}{2}} \qquad
\prod_\epsilon
\end{displaymath}
n
i=1
_
2
0
0<i<n
1<j<m
1(i, ,) =
iI
1<j<m
Q(i, ,)
3
A
M
S-L
A
T
E
X tem super-/sub-escritos multi-linha.
3.3 Construindo Blocos de Frmulas Matemticas 55
O T
E
X coloca disposio todo o tipo de smbolos para parntesis e
outros delimitadores (por exemplo [ | ). Parntesis curvos e rectangu-
lares podem ser introduzidos nas teclas correspondentes e as chavetas com
\{, mas todos os outros delimitadores so gerados com comandos especi-
ais (por exemplo \updownarrow). Para uma lista de todos os delimitadores
disponveis, verique a tabela 3.7 na pgina 65.
\begin{displaymath}
{a,b,c}\neq\{a,b,c\}
\end{displaymath}
o, /, c ,= o, /, c
Se colocar o comando \left antes do delimitador que abre ou um \right
antes do delimitador que fecha, o T
E
X ir determinar automaticamente o
tamanho correcto do delimitador. Note que deve fechar cada um \left com
um \right correspondente, e que o tamanho determinado correctamente
se ambos forem escritos na mesma linha. Se no quer um smbolo direita,
use o delimitador invisvel \right.!
\begin{displaymath}
1 + \left( \frac{1}{ 1-x^{2} }
\right) ^3
\end{displaymath}
1 +
_
1
1 r
2
_
3
Em alguns casos necessrio especicar o tamanho correcto de um deli-
mitador matemtico mo, o que pode ser feito usando os comandos \big,
\Big, \bigg e \Bigg como prexos para a maior partes dos delimitadores.
4
$\Big( (x+1) (x-1) \Big) ^{2}$\\
$\big(\Big(\bigg(\Bigg($\quad
$\big\}\Big\}\bigg\}\Bigg\}$
\quad
$\big\|\Big\|\bigg\|\Bigg\|$
_
(r + 1)(r 1)
_
2
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
Existem vrios comandos para introduzir trs pontos numa frmula.
\ldots escreve os pontos na linha base, \cdots pe-nos centrados. Alm
destes, existem os comandos \vdots para pontos verticais e \ddots para
pontos diagonais. Pode encontrar outro exemplo na seco 3.5.
\begin{displaymath}
x_{1},\ldots,x_{n} \qquad
x_{1}+\cdots+x_{n}
\end{displaymath}
r
1
, . . . , r
n
r
1
+ + r
n
4
Estes comandos no funcionam como esperado se um comando de mudana de ta-
manho foi usado ou a opo 11pt ou 12pt foi especicada. Utilize o pacote exscale ou
amsmath para corrigir este comportamento.
56 Frmulas Matemticas
3.4 Espaamento Matemtico
Se os espaos escolhidos pelo T
E
X para colocar nas frmulas no so satisfa-
trios, podem ser ajustados inserindo comandos especiais. Existem alguns
comandos para pequenos espaos: \, para
3
18
quad ( ), \: para
4
18
quad
( ) e \; para
5
18
quad ( ). Os caracteres \ geram um espao de tamanho
mdio e \quad ( ) e \qquad ( ) produzem espaos largos. O tamanho
de um \quad corresponde largura do caracter M no tipo de letra actual.
O comando \! produz um espao negativo de
3
18
quad ( ).
\newcommand{\ud}{\mathrm{d}}
\begin{displaymath}
\int\!\!\!\int_{D} g(x,y)
\, \ud x\, \ud y
\end{displaymath}
em vez de
\begin{displaymath}
\int\int_{D} g(x,y)\ud x \ud y
\end{displaymath}
__
D
p(r, j) drdj
em vez de
_ _
D
p(r, j)drdj
Note que d no diferencial convencionalmente escrito em tipo de letra
romana.
O A
M
S-L
A
T
E
X tem outras formas de controlar precisamente o espao
entre vrios sinais de integral, nomeadamente os comando \iint, \iiint,
\iiiint, e \idotsint. Com o pacote amsmath carregado, o exemplo acima
seria escrito desta forma:
\newcommand{\ud}{\mathrm{d}}
\begin{displaymath}
\iint_{D} \, \ud x \, \ud y
\end{displaymath}
__
D
drdj
Veja o documento electrnico testmath.tex (distribudo com o A
M
S-
L
A
T
E
X) ou o Captulo 8 do The L
A
T
E
X Companion [3] para mais detalhes.
3.5 Material Alinhado Verticalmente
Para escrever matrizes, use o ambiente array. Funciona de uma forma
similar ao ambiente tabular. O comando \\ usado para quebrar as linhas.
\begin{displaymath}
\mathbf{X} =
\left( \begin{array}{ccc}
x_{11} & x_{12} & \ldots \\
x_{21} & x_{22} & \ldots \\
\vdots & \vdots & \ddots
\end{array} \right)
\end{displaymath}
X =
_
_
_
r
11
r
12
. . .
r
21
r
22
. . .
.
.
.
.
.
.
.
.
.
_
_
_
3.5 Material Alinhado Verticalmente 57
Este ambiente tambm pode ser usado para escrever expresses que tm
um delimitador esquerdo grande, usando um . como delimitador invisvel
direita (\right):
\begin{displaymath}
y = \left\{ \begin{array}{ll}
a & \textrm{se $d>c$}\\
b+x & \textrm{na manh}\\
l & \textrm{no resto do dia}
\end{array} \right.
\end{displaymath}
j =
_
_
_
o se d c
/ + r na manh
| no resto do dia
Da mesma forma que dentro do ambiente tabular pode desenhar linhas,
pode fazer o mesmo no ambiente array, por exemplo, separando as entradas
de uma matriz:
\begin{displaymath}
\left(\begin{array}{c|c}
1 & 2 \\
\hline
3 & 4
\end{array}\right)
\end{displaymath}
_
1 2
3 4
_
Para frmulas que ocupam mais do que uma linha, ou para sistemas de
equaes, pode usar o ambiente eqnarray, e eqnarray* em vez de equation.
Com eqnarray cada linha ca com um nmero de equao. O eqnarray*
no numera o que quer que seja.
Os ambientes eqnarray e eqnarray* funcionam como uma tabela de
trs colunas da forma {rcl}, onde a coluna do meio pode ser utilizada para
o sinal de igual, o de diferente, ou qualquer outro que parea adequado. O
comando \\ quebra as linhas.
\begin{eqnarray}
f(x) & = & \cos x \\
f(x) & = & -\sin x \\
\int_{0}^{x} f(y)dy &
= & \sin x
\end{eqnarray}
)(r) = cos r (3.5)
)
r
7
7!
+ (3.8)
\begin{eqnarray}
\lefteqn{ \cos x = 1
-\frac{x^{2}}{2!} +{} }
\nonumber\\
& & {}+\frac{x^{4}}{4!}
-\frac{x^{6}}{6!}+{}\cdots
\end{eqnarray}
cos r = 1
r
2
2!
+
+
r
4
4!
r
6
6!
+ (3.9)
O comando \nonumber faz com que o L
A
T
E
X no gere um nmero para a
equao actual.
Pode tornar-se difcil obter equaes verticalmente alinhadas a aparecer
de uma forma correcta com estes mtodos; o pacote amsmath tem um con-
junto mais poderoso de alternativas. (veja os ambientes align, flalign,
gather, multiline e split).
3.6 Fantasmas
No conseguimos ver fantasmas, mas eles continuam a ocupar algum espao
nas mentes de um grande nmero de pessoas. O L
A
T
E
X no diferente.
Podemos usar isto para alguns truques interessantes de espaamento.
Quando se alinha texto verticalmente usando ^ e _, o L
A
T
E
X , por vezes,
demasiado prestvel. Usando o comando \phantom pode reservar espao
para caracteres que no aparecem no resultado nal. A forma mais fcil de
compreender reparar nos sequintes exemplos:
\begin{displaymath}
{}^{12}_{\phantom{1}6}\textrm{C}
\qquad \textrm{em oposio a} \qquad
{}^{12}_{6}\textrm{C}
\end{displaymath}
12
6
C em oposio a
12
6
C
3.7 Tamanho da Matemtica 59
\begin{displaymath}
\Gamma_{ij}^{\phantom{ij}k}
\qquad \textrm{em oposio a} \qquad
\Gamma_{ij}^{k}
\end{displaymath}
k
ij
em oposio a
k
ij
3.7 Tamanho da Matemtica
No modo matemtico, o T
E
X selecciona o tamanho de letra de acordo com o
contexto. Os expoentes, por exemplo, cam escritos num tipo de letra mais
pequeno. Se deseja escrever parte de uma equao em letras tipo roman, no
use o comando \textrm porque o mecanismo de mudana de tamanho no
ir funcionar, visto que o \textrm muda temporariamente para o modo de
texto. Em vez disto, use \mathrm para manter o mecanismo de mudana de
tamanho activo. Mas preste ateno, \mathrm ir funcionar apenas em pe-
quenos textos. Os espaos ainda no esto activos e os caracteres acentuados
no funcionam.
5
\begin{equation}
2^{\textrm{nd}} \quad
2^{\mathrm{nd}}
\end{equation}
2
nd
2
nd
(3.10)
Por vezes, precisa de dizer ao L
A
T
E
X o tamanho correcto a utilizar. Em
modo matemtico, o tamanho especicado com um dos quatro comandos:
\displaystyle (123), \textstyle (123), \scriptstyle (123) e
\scriptscriptstyle (123).
A mudana de estilos tambm afecta a forma como os limites so dese-
nhados.
\begin{displaymath}
\frac{\displaystyle
\sum_{i=1}^n(x_i-\overline x)
(y_i-\overline y)}
{\displaystyle\biggl[
\sum_{i=1}^n(x_i-\overline x)^2
\sum_{i=1}^n(y_i-\overline y)^2
\biggr]^{1/2}}
\end{displaymath}
n
i=1
(r
i
r)(j
i
j)
_
n
i=1
(r
i
r)
2
n
i=1
(j
i
j)
2
_
1/2
Este um exemplo com parntesis maiores do que os \left[ \right] habi-
tuais. Os comandos \biggl e \biggr so usados para parntesis esquerdos
e direitos, respectivamente.
5
O pacote A
M
S-L
A
T
E
X (amsmath) faz com que o comando \textrm funcione com mu-
dana de tamanho.
60 Frmulas Matemticas
3.8 Teoremas, Leis, . . .
Ao escrever documentos matemticos, provavelmente precisa de uma forma
de escrever Lemas, Denies, Axiomas e estruturas similares. O
L
A
T
E
X suporta isto com o comando
\newtheorem{nome}[contador]{texto}[seco]
O argumento nome uma pequena palavra chave usada para identicar o
teorema. Com o argumento texto pode denir o nome actual do teorema,
que ser impresso no documento nal.
Os argumentos entre parntesis rectos so opcionais. So ambos usados
para especicar a numerao usada no teorema. Com o argumento conta-
dor pode especicar o nome do ambiente teorema. O novo teorema ser
ento numerado com a sua prpria sequncia. O argumento seco permite
especicar a unidade de seco com o qual queremos que o teorema seja
numerado.
Depois de executar o comando \newtheorem no prembulo do docu-
mento, pode usar o seguinte comando durante o documento:
\begin{nome}[texto]
Este o meu interessante teorema
\end{nome}
O pacote amsthm providencia o comando \newtheoremstyle{estilo} que
permite denir como o teorema ir functionar, podendo-se escolher um de
trs estilos pre-denidos: definition (ttulo gordo, corpo em tipo de letra
roman), plain (ttulo gordo, corpo em itlico) ou remark (ttulo em itlico,
corpo em tipo de letra roman).
Isto deve ser teoria suciente. Os exemplos seguintes devero remover
quaisquer dvidas e mostrar que o ambiente \newtheorem demasiado com-
plexo para se compreender.
Primeiro denem-se os teoremas:
\theoremstyle{definition} \newtheorem{law}{Law}
\theoremstyle{plain} \newtheorem{jury}[law]{Jury}
\theoremstyle{remark} \newtheorem*{marg}{Margaret}
\begin{law} \label{law:box}
No te escondas na caixa.
\end{law}
\begin{jury}[O dcimo]
Podes ser tu! Portanto, cautela
e v a lei~\ref{law:box}\end{jury}
\begin{marg}No, No, No\end{marg}
Law 1. No te escondas na caixa.
Jury 2 (O dcimo). Podes ser tu! Por-
tanto, cautela e v a lei 1
Margaret. No, No, No
3.9 Smbolos Gordos 61
O teorema Jri usa o mesmo contador que o teorema Lei. Desta
forma, obtm um nmero que est em sequncia com a outra Lei. O
argumento em parntesis rectos usado para especicar um ttulo ou algo
parecido para o teorema.
\flushleft
\newtheorem{mur}{Murphy}[section]
\begin{mur}
Se existirem duas ou mais
maneiras de realizar algo, e
uma delas puder resultar em
catstrofe, ento algum a
a ir executar.\end{mur}
Murphy 3.8.1. Se existirem duas ou mais
maneiras de realizar algo, e uma delas
puder resultar em catstrofe, ento
algum a a ir executar.
O teorema de Murphy ca com um nmero que ligado ao nmero
da seco actual. Tambm pode usar outra unidade como, por exemplo,
captulo ou subseco.
O pacote amsthm tambm disponibiliza o ambiente proof.
\begin{proof}
trivial, use
\[E=mc^2\]
\end{proof}
Demonstrao. trivial, use
1 = :c
2
Com o comando \qedhere pode mover o smbolo de nal de prova de
stio em casos em que ele iria aparecer por si s numa linha.
\begin{proof}
trivial, use
\[E=mc^2 \qedhere\]
\end{proof}
Demonstrao. trivial, use
1 = :c
2
3.9 Smbolos Gordos
ligeiramente difcil obter smbolos bold em L
A
T
E
X; isto possivelmente
intencional visto que tipgrafos amadores tendem a us-los em demasia. O
comando \mathbf muda as letras para bold, mas apenas as letras normais,
enquanto que os smbolos matemticos so normalmente itlicos. Existe
o comando \boldmath, mas s pode ser usado fora do modo matemtico.
Tambm funciona para smbolos.
\begin{displaymath}
\mu, M \qquad \mathbf{M} \qquad
\mbox{\boldmath $\mu, M$}
\end{displaymath}
j, ` M , M
62 Frmulas Matemticas
Note que a vrgula tambm est em bold o que pode no ser o desejado.
O pacote amsbsy (includo no amsmath) faz isto muito mais facilmente
porque inclui o comando \boldsymbol.
\begin{displaymath}
\mu, M \qquad
\boldsymbol{\mu}, \boldsymbol{M}
\end{displaymath}
j, ` , M
3.10 Lista de Smbolos Matemticos 63
3.10 Lista de Smbolos Matemticos
As tabelas seguintes demonstram todos os smbolos normalmente acessveis
no modo matemtico.
Para usar os smbolos listados nas tabelas 3.113.15,
6
o pacote amssymb
deve ser carregado no prembulo do documento e os tipos de letra AMS
devem estar instalados no sistema. Se o pacote e os tipos de letra no esto
instaladas no seu sistema, visite
macros/latex/required/amslatex. Pode encontrar ainda outra lista de
smbolos mais detalhada em info/symbols/comprehensive.
Tabela 3.1: Acentos Matemticos.
o \hat{a} o \check{a} o \tilde{a}
` o \grave{a} o \dot{a} o \ddot{a}
o \bar{a} o \vec{a}
\widehat{A}
o \acute{a} o \breve{a}
\widetilde{A}
Tabela 3.2: Letras Gregas.
\alpha \theta o o \upsilon
\beta \vartheta \pi \phi
\gamma \iota c \varpi \varphi
\delta \kappa \rho \chi
c \epsilon \lambda \varrho \psi
\varepsilon j \mu \sigma \omega
\zeta \nu \varsigma
\eta \xi \tau
\Gamma \Lambda \Sigma \Psi
\Delta \Xi \Upsilon \Omega
\Theta \Pi \Phi
6
Estas tabelas so derivadas do symbols.tex por David Carlisle e mudados extensiva-
mente como sugerido por Josef Tkadlex.
64 Frmulas Matemticas
Tabela 3.3: Relaes Binrias.
Pode negar cada um dos seguintes smbolos adicionando o comando \not
como prexo do smbolo em causa.
< < > = =
\leq or \le \geq or \ge \equiv
\ll \gg
.
= \doteq
\prec ~ \succ \sim
_ \preceq _ \succeq \simeq
\subset \supset \approx
\subseteq \supseteq
= \cong
\sqsubset
a
\sqsupset
a
I \Join
a
_ \sqsubseteq _ \sqsupseteq > \bowtie
\in \ni , \owns \propto
\vdash \dashv [= \models
[ \mid | \parallel \perp
\smile \frown \asymp
: : , \notin ,= \neq or \ne
a
Use o pacote latexsym para aceder a estes smbolos
Tabela 3.4: Operadores Binrios.
+ + -
\pm \mp \triangleleft
\cdot \div > \triangleright
\times \setminus \star
\cup \cap \ast
. \sqcup \sqcap \circ
\vee , \lor \wedge , \land \bullet
\oplus \ominus \diamond
\odot \oslash \uplus
\otimes _ \bigcirc H \amalg
\bigtriangleup _ \bigtriangledown \dagger
\lhd
a
\rhd
a
\ddagger
\unlhd
a
\unrhd
a
/ \wr
3.10 Lista de Smbolos Matemticos 65
Tabela 3.5: Operadores GRANDES.
\sum
\bigcup
_
\bigvee
\prod
\bigcap
_
\bigwedge
\coprod
\bigsqcup
\biguplus
_
\int
_
\oint
\bigodot
\bigoplus
\bigotimes
Tabela 3.6: Setas.
\leftarrow or \gets \longleftarrow
\rightarrow or \to \longrightarrow
\leftrightarrow \longleftrightarrow
\Leftarrow = \Longleftarrow
\Rightarrow = \Longrightarrow
\Leftrightarrow \Longleftrightarrow
\mapsto \longmapsto
\hookleftarrow \hookrightarrow
\leftharpoonup \rightharpoonup
\leftharpoondown \rightharpoondown
= \rightleftharpoons \iff (bigger spaces)
\uparrow \downarrow
\updownarrow \Uparrow
\Downarrow \Updownarrow
\nearrow \searrow
\swarrow \nwarrow
Y \leadsto
a
a
Use o pacote latexsym para aceder a estes smbolos
Tabela 3.7: Delimitadores.
( ( ) ) \uparrow
[ [ or \lbrack ] ] or \rbrack \downarrow
\{ or \lbrace \} or \rbrace \updownarrow
\langle ) \rangle [ | or \vert
\lfloor | \rfloor \lceil
, / \backslash \Updownarrow
\Uparrow \Downarrow | \| or \Vert
| \rceil
66 Frmulas Matemticas
Tabela 3.8: Grandes Delimitadores.
_
_
\lgroup
_
_
\rgroup
_
_
\lmoustache
\arrowvert
_
_
\Arrowvert
\bracevert
_
_
\rmoustache
Tabela 3.9: Smbolos Sortidos.
. . . \dots \cdots
.
.
. \vdots
.
.
.
\ddots
/ \hbar \imath , \jmath / \ell
' \Re \Im \aleph \wp
\forall \exists G \mho
a
\partial
Thnh. O pdfT
E
X produz um
cheiro PDF onde o normal T
E
X produz DVI. Tambm existe um pdfL
A
T
E
X,
que produz PDF directamente do L
A
T
E
X.
Quer o pdfT
E
X quer o pdfL
A
T
E
X so instalados automaticamente pela
maior parte das distribuies modernas do T
E
X, como a teT
E
X, fpT
E
X,
MikT
E
X, T
E
XLive e CMacT
E
X.
Para produzir um PDF em vez do DVI, suciente substituir o comando
latex file.tex por pdflatex file.tex. Em sistemas em que o L
A
T
E
X no
chamado da linha de comando, dever ser necessrio encontrar um boto
especial no T
E
XControlCenter.
80 Especialidades
Pode denir o tamanho do papel com um argumento opcional na de-
nio da classe do documento. Os valores tradicionais so a4paper ou
letterpaper. Embora tambm funcione em pdfL
A
T
E
X, o pdfT
E
X precisa
de saber o tamanho fsico do papel para determinar o tamanho fsico das
pginas no cheiro pdf. Se usar o pacote hyperref (veja a pgina 83), o
tamanho do papel ir ser ajustado automaticamente. De outra forma, ter
de o regular manualmente, colocando as seguintes linhas no prembulo do
documento:
\pdfpagewidth=\paperwidth
\pdfpageheight=\paperheight
A seco seguinte ir aprofundar em maior detalhe as diferenas entre
o L
A
T
E
X normal e o pdfL
A
T
E
X. As maiores diferenas dizem respeito a trs
reas: os tipos de letra a usar, o formato das imagens a incluir, e a congu-
rao manual das hiper-ligaes.
4.7.2 Os tipos de letra
pdfL
A
T
E
X pode funcionar com todos os tipos de letras (PK bitmaps, Tru-
eType, PostScript type 1. . . ) mas o formato normal do L
A
T
E
X, os tipos de
letra bitmap PK, produzem resultados muito feios quando o documento
mostrado com o Acrobat Reader. prefervel usar os tipos de letra PostS-
cript Type 1 exclusivamente para produzir documentos que sejam bem
visveis. As instalaes modernas do T
E
X iro tratar de congurar estes
detalhes de forma a que isto acontea automaticamente. O melhor experi-
mentar. Se funciona para si, salte o resto desta seco.
A implementao dos tipos PostScript Type 1 das Computer Modern
e AMSFonts foram produzidos pelo Blue Sky Research e Y&Y, Inc., que
transferiram os direitos de cpia para a Sociedade Matemtica Americana.
Estes tipos de letra foram tornados disponveis por volta de 1997 e de mo-
mento encontram-se em quase todas as distribuies T
E
X.
No entanto, se estiver a usar o L
A
T
E
X para criar documentos em ln-
guas que no o Ingls, poder querer usar os tipos de letra EC, LH ou CB
(leia a discusso sobre tipos de letra OT1 na pgina 27). Vladimir Volovich
criou um conjunto de tipos de letra denominado cm-super que cobre por
completo o conjunto de tipos de letra EC/TC, EC Concrete, EC Bright
e LH. Este pacote est disponvel em CTAN:/fonts/ps-type1/cm-super e
est includo no T
E
XLive7 e MikT
E
X. Tipos de letra semelhantes type 1
CB Greek foram criados pelos Apstolos Syropoulos e esto disponveis em
CTAN:/tex-archive/fonts/greek/cb. Infelizmente, estes conjuntos no
so da mesma qualidade tipogrca dos tipos de letra Type1 CM do Blue
Sly/Y&Y. So automaticamente escolhidas de forma a que no cran tenha
bastante qualidade mas a sua impresso seja semelhante aos tipos de letra
originais EC/LH/CB.
4.7 Usar o pdf L
A
T
E
X 81
Se estiver a criar um documento numa lngua baseada em Latim, tem
vrias outras opes.
Pode desejar usar o pacote aeguill, tambm conhecido como Almost
European Computer Modern with Guillemets. Para tal basta colocar
a linha \usepackage{aeguill} no prembulo do documento, para
activar os tipos de letra virtuais AE em vez dos tipos de letra EC.
Alternativamente, pode usar o pacote \usepackage{mltex}, mas este
s funciona quando o seu pdfT
E
X foi compilado com a opo mltex.
O conjunto de tipos de letra AE, tal como o sistema MlT
E
X, faz com que
o T
E
X acredite que tem um conjunto completo de 256 caracteres sua
disposio criando a maior parte dos tipos de letra que faltem, rearranjando-
as na ordem EX, o que permite que se use os excelentes tipos de letra CM
type 1 existentes na maior parte dos sistemas. Como o tipo de letra ir estar
na codicao T1, a hifenizao ir funcionar correctamente nas lnguas
Europeias baseadas em Latin. A nica desvantagem que os caracteres
articiais AE no funcionam na funo Find do Acrobat Reader, pelo que
no poder procurar palavras com caracteres acentuados no seu documento
nal PDF.
Para a lngua Russa, uma soluo parecida usar os tipos de letra virtu-
ais C1 disponveis em ftp://ftp.vsu.ru/pub/tex/font-packs/c1fonts.
Estes tipos de letra combinam os tipos habituais CM type 1 com a coleco
Bluesky e tipos de letra CMCYR type 1 da coleco Paradissa e BaKoMa,
todas disponveis no CTAN. Visto que os tipos de letra Paradissa contm
apenas letras Russas, os tipos de letra C1 no contm alguns glifos cirlicos.
Outra soluo mudar para outro tipo de letra PostScript type 1.
Actualmente, algumas so includas com todas as cpias do Acrobat Reader.
Como estes tipos de letra tm tamanhos diferentes, o formato do texto nas
suas pginas ir mudar. Normalmente, estes tipos de letra iro usar mais
espao do que os tipos de letra CM, que so muito ecientes em relao a
espao ocupado. A coerncia visual do documento tambm ir sofrer porque
os tipos de letra Times, Helvetica e Courier (os candidatos principais para o
trabalho de substituio) no foram desenhados para trabalhar em harmonia
num nico documento.
Dois conjuntos de tipos prontos a usar esto disponveis para este m:
pxfonts, que baseado nas Palatino, como tipo para o texto do corpo, e o
pacote txfonts, que baseado no Times. Para os usar suciente colocar as
seguintes linhas no prembulo do seu documento:
\usepackage[T1]{fontenc}
\usepackage{pxfonts}
Nota: ir encontrar linhas como
82 Especialidades
Warning: pdftex (file eurmo10): Font eur... not found
no cheiro .log depois de compilar o seu cheiro. Signicam que algum
tipo de letra usado no documento no foi encontrado. Tem realmente de
resolver estes problemas, ou o PDF resultante pode no mostrar as pginas
com os caracteres em falta.
Todo este negcio de tipos de letra, especialmente a falta de um bom
conjunto de tipos de letra EC de qualidade equivalente s CM no formato
type 1, est a ocupar as mentes de muita gente. Recentemente um novo
conjunto de tipos de letra de grade qualidade chamados Latin Modern (LM)
cou disponvel. Colocou um ponto nal na misria. Se tem uma instalao
de T
E
X recente, tem algumas hipteses de ter uma cpia delas instalada.
Tudo o que tem de fazer adicionar:
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
ao prembulo do seu documento, e estar a criar resultados PDF de excelente
qualidade, com suporte completo para todo o conjunto de caracteres latinos.
4.7.3 Uso de Grcos
Incluir grcos num documento funciona melhor com o pacote graphicx (ver
pgina 71). Ao usar a opo especial pdftex como driver, o pacote ir
funcionar com o pdfL
A
T
E
X de forma simples:
\usepackage[pdftex]{color,graphicx}
No exemplo acima, tambm inclu a opo color, visto que o uso de cores
em documentos mostrados na Internet bastante natural.
Chega de boas notcias. As imagens em Encapsulated PostScript no
funcionam com o PdfL
A
T
E
X. Se no denir uma extenso no nome do cheiro
do comando \includegraphics, o pacote graphicx ir procurar um cheiro
que lhe seja adequado, dependendo das opes do driver. Para pdftex ir
procurar os formatos .png, .pdf, .jpg e .mps (METAPOST), e .tifmas
no .eps.
A forma simples de resolver este problema simplesmente converter
os seus cheiros EPS para o formato PDF usando a utilidade epstopdf
existente em tantos sistemas. Para grcos vectoriais (desenhos) esta uma
grande soluo. Para mapas de bits (fotograas) isto pode no ser ideal,
porque o formato PDF suporta nativamente a incluso de imagens PNG
e JPEG. PNG bom para imagens de aplicaes e outras imagens com
poucas cores. O JPEG bom para fotograas, visto ser eciente em relao
ao espao ocupado em disco.
4.7 Usar o pdf L
A
T
E
X 83
At pode ser desejvel no desenhar algumas guras geomtricas mas
descrev-las com uma linguagem especializada, como o METAPOST, que
pode ser encontrada em quase todas as distribuies do T
E
X, e vem com o
seu prprio manual extensivo.
4.7.4 Ligaes de Hipertexto
O pacote hyperref ir ter o cuidado de transformar todas as referncias in-
ternas do seu documento em hiper-ligaes. Para que isto funcione devida-
mente, alguma magia necessrio, e portanto, tem de colocar
\usepackage[pdftex]{hyperref} como ltimo comando do prembulo do
seu documento.
Muitas opes esto disponveis para congurar o comportamento do
pacote hyperref:
como uma lista separada por vrgulas depois da opo pdftex
\usepackage[pdftex]{hyperref}
ou em linhas individuais com o comando \hypersetup{opes}.
A nica opo necessria pdftex; as outras so opcionais e permitem
alterar o comportamento por omisso do hyperref.
7
Na lista seguinte, os
valores por omisso esto escritos num tipo de letra vertical (portanto, no
itlico).
bookmarks (=true,false) mostra (true) ou esconde a barra de
bookmarks ao visualizar o documento;
unicode (=false,true) permite usar caracteres unicode nas bookmarks
do Acrobat;
pdftoolbar (=true,false) mostra ou esconde a barra de ferramentas do
Acrobat;
pdfmenubar (=true,false) mostra ou esconde o menu do Acrobat;
pdffitwindow (=true,false) ajusta, ou no, automaticamente o
tamanho inicial do texto quando visualizado;
pdftitle (={texto}) dene o ttulo que ser mostrado na janela
Document Info do Acrobat;
pdfauthor (={texto}) o nome do autor do PDF;
7
de notar que o pacote hyperref no est limitado ao uso com o pdfT
E
X. Tambm
pode ser congurado para embeber informao especca do PDF no cheiro DVI, resul-
tado normal do L
A
T
E
X, que depois ir colocar no cheiro PS com o dvips e que, nalmente,
ser usado pelo Adobe Distiller quando se tentar converter de PS para PDF.
84 Especialidades
pdfnewwindow (=true,false) dene se uma nova janela deve ser aberta
quando uma ligao envia para fora do documento actual;
colorlinks (=false,true) delimita as ligaes por uma caixa de cor
(false) ou pinta o texto das ligaes (true). As cores destas ligaes
podem ser conguradas com as seguintes opes:
linkcolor (=red) cor de ligaes internas (seces, pginas, etc),
citecolor (=green) cor de citaes (bibliograa),
filecolor (=magenta) cor de ligaes para cheiros;
urlcolor (=cyan) cor de ligaes de URL (mail, web).
Se estiver contente com os valores por omisso, use
\usepackage[pdftex]{hyperref}
Para ter a lista de bookmarks aberta e ligaes em cor: (os valores =true
so opcionais):
\usepackage[pdftex,bookmarks,colorlinks]{hyperref}
Ao criar PDFs destinados a serem impressos, as ligaes coloridas no so
boa ideia uma vez que iro acabar cinzentas no resultado nal, tornando-se
difceis de ler. Pode usar caixas de cor, que no sero impressas:
\usepackage{hyperref}
\hypersetup{colorlinks=false}
ou colocar as ligaes a preto:
\usepackage{hyperref}
\hypersetup{colorlinks,%
citecolor=black,%
filecolor=black,%
linkcolor=black,%
urlcolor=black,%
pdftex}
Quando quer apenas providenciar informao para a seco de informa-
o sobre o documento PDF:
\usepackage[pdfauthor={Pierre Desproges},%
pdftitle={Des femmes qui tombent},%
pdftex]{hyperref}
4.7 Usar o pdf L
A
T
E
X 85
Alm das hiper-ligaes automticas para referncias cruzadas, possvel
embeber explicitamente ligaes usando
\href{url }{texto}
O cdigo
O endereo do \href{http://www.ctan.org}{CTAN}.
produz o resultado CTAN; um clique na palavra CTAN ir lev-lo
pgina de Internet do CTAN.
Se o destino da ligao no um URL mas um cheiro local, pode usar
o comando \href da seguinte forma:
O documento completo est \href{manual.pdf}{aqui}
Que produz o texto O documento completo est aqui. Ao clicar na palavra
aqui ir abrir o cheiro manual.pdf. (O nome do cheiro relativo
localizao actual do documento actual).
O autor de um artigo pode desejar que os seus leitores enviem-lhe men-
sagens de correio electrnico usando o comando \href dentro do comando
\author na pgina principal do documento:
\author{Mary Oetiker $<$\href{mailto:mary@oetiker.ch}%
{mary@oetiker.ch}$>$
Note que coloquei a ligao de forma a que o meu endereo aparea no
s na ligao mas tambm na pgina. Isso importante porque a ligao
\href{mailto:mary@oetiker.ch}{Mary Oetiker}
ir funcionar bem dentro do Acrobat, mas assim que a pgina seja impressa
o endereo nunca mais seria visvel.
4.7.5 Problemas com Ligaes
Mensagens como a seguinte:
! pdfTeX warning (ext4): destination with the same identifier
(name{page.1}) has been already used, duplicate ignored
aparecem quando um contador reinicializado, por exemplo, ao usar o co-
mando \mainmatter providenciado pela classe de documento book. Este
reinicializa o contador do nmero de pgina a 1 antes do primeiro captulo
do livro. Mas como o prefcio do livro tambm tem como nmero de pgina
o 1, todas as ligaes pgina 1 deixaro de ser nicas, e da que aparea
o aviso de que o duplicado tenha sido ignorado.
A contra-medida consiste em colocar plainpages=false nas opes do
hyperref. Isto, infelizmente, ajuda apenas com o contador de pginas. Uma
soluo ainda mais radical o uso da opo hypertexnames=false, mas
que ir causar as ligaes de pginas deixar de funcionar.
86 Especialidades
4.7.6 Problemas com Bookmarks
O texto mostrado nas bookmarks no aparece sempre como esperava que
aparecessem. Porque as bookmarks so apenas texto, muito menos ca-
racteres esto disponveis do que para texto normal L
A
T
E
X. Hyperref ir
detectar esses problemas e avisar:
Package hyperref Warning:
Token not allowed in a PDFDocEncoded string:
Depois, pode contornar o problema providenciando um texto para a book-
mark, que ir substituir o texto em causa:
\texorpdfstring{Texto T
E
X}{Texto da Bookmark}
As expresses matemticas so candidatas especiais para este tipo de
problema:
\section{\texorpdfstring{$E=mc^2$}%
{E=mc^2}}
o que torna \section{$E=mc^2$} em E=mc2 para a rea de bookmark.
Mudanas de cor tambm no viajam para as bookmarks:
\section{\textcolor{red}{Red !}}
produz redRed!. O comando \textcolor ser ignorado mas o seu argu-
mento (red) ser impresso.
Se usar
\section{\texorpdfstring{\textcolor{red}{Red !}}{Red\ !}}
o resultado ir ser muito mais legvel.
Se escrever o seu documento em unicode e usar a opo unicode para
o pacote hyperref poder usar caracteres unicode nas bookmarks. Isto ir
dar-lhe uma seleco muito maior de caracteres de onde escolher quando
usar o \texorpdfstring.
Compatibilidade entre L
A
T
E
X e pdf L
A
T
E
X
Idealmente o seu documento deveria compilar igualmente bem com o L
A
T
E
X
quer com o pdfL
A
T
E
X. O principal problema a este respeito a incluso a
grcos. A soluo simples para deixar cair sistematicamente a extenso do
comando \includegraphics. Um formato adequado ser automaticamente
procurado na directoria actual. Tudo o que tem de fazer criar verses
apropriadas dos cheiros de imagens. O L
A
T
E
X ir procurar por cheiros
.eps, e pdfL
A
T
E
X ir tentar incluir um cheiro com extenso .png, .pdf,
.jpg ou .mps (por esta ordem).
4.7 Usar o pdf L
A
T
E
X 87
Para os casos em que deseja usar cdigo diferente para a verso PDF do
seu documento, pode adicionar o pacote ifpdf
8
ao seu prembulo. Espera-se
que a sua instalao de L
A
T
E
X j o tenha instalado; caso contrrio, possivel-
mente estar a usar o MikT
E
X que o ir instalar automticamente a primeira
vez que o tentar usar. Este pacote dene um comando especial \ifpdf que
permite que escreva cdigo condicional de forma fcil. Neste exemplo, que-
remos que a verso PostScript seja escrita a preto e branco, dados os custos
de impresso, mas queremos que a verso PDF aparea a cores para poder
ser visualizada de forma interactiva.
\RequirePackage{ifpdf} % running on pdfTeX?
\ifpdf
\documentclass[a4paper,12pt,pdftex]{book}
\else
\documentclass[a4paper,12pt,dvips]{book}
\fi
\ifpdf
\usepackage{lmodern}
\fi
\usepackage[bookmarks, % add hyperlinks
colorlinks,
plainpages=false]{hyperref}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[english]{babel}
\usepackage{graphicx}
...
No exemplo acima inclu o pacote hyperref mesmo na verso no PDF. O
efeito disto fazer com que o comando \href passe a funcionar em todos
os casos, o que me poupa de encaixar cada uma das suas ocorrncias numa
instruo condicional.
Note que nas distribuies recentes de T
E
X (T
E
XLive, por exemplo), o
programa T
E
X , na verdade, o pdfT
E
X, e ir automaticamente decidir entre
produzir um pdf ou um dvi de acordo com as propriedades da classe do seu
documento. Se usar o cdigo acima, ento ainda poder usar o pdflatex
para obter resultados pdf, e o latex para o resultado habitual em dvi.
8
Se quer saber toda a verdade em porque usar este pacote, ento v s perguntas mais
comuns do T
E
X, em http://www.tex.ac.uk/cgi-bin/texfaq2html?label=ifpdf.
88 Especialidades
4.8 Criar Apresentaes
By Daniel Flipo <Daniel.Flipo@univ-lille1.fr>
Pode apresentar os resultados do seu trabalho cientco num quadro
preto, com transparncias, ou directamente do seu porttil usando algum
programa de apresentaes.
O pdfL
A
T
E
X combinado com a classe beamer permite criar apresentaes
em PDF, que se parecem bastante com o que possvel criar usando o Power-
Point, mas muito mais portvel j que o Acrobat Reader est disponvel em
muitos mais sistemas.
A classe beaner usa graphicx, color e hyperref com opes adaptadas a
apresentaes em cran.
Quando compila o cdigo apresentado na gura 4.2 com o pdfL
A
T
E
X ir
obter um cheiro PDF com uma pgina de rosto (com um ttulo) e uma
segunda pgina que mostra vrios items que sero revelados um de cada vez
medida que for andando pela apresentao.
Uma das vantagens da classe beamer a que ela produz um cheiro
PDF que pode ser usado directamente sem passar um estado intermdio em
PostScript (como o prosper) ou no precisar de pos-processamento como as
apresentaes realizadas com o pacote ppower4.
Com a classe beamer pode produzir vrias verses (modos) do seu docu-
mento usando o mesmo cheiro fonte. Este pode conter instrues especiais
para os diferentes modos entre parntesis rectos. Os seguintes modos esto
disponveis:
beamer para uma apresentao em PDF como discutido acima;
trans para slides ou transparncias.
handout para a verso impressa.
O modo por omisso o beamer, e pode mud-la colocando o modo desejado
como uma opo global, tal como em \documentclass[10pt,handout]{beamer}
para imprimir a documentao de apoio da apresentao.
O visual das apresentaes no ecr dependem no tema que escolher. Pode
escolher um dos que vm com a classe beamer, ou pode mesmo criar o seu
prprio tema. Veja a documentao da classe beamer em beameruserguide.pdf
para mais informao sobre isto.
Olhemos com mais detalhe para o cdigo da gura 4.2.
Para a verso de ecr da apresentao (\mode<beamer>) escolhemos o
tema Goettingen para mostrar um painel de navegao integrado numa lista
de contedos. As opes permitem escolher o tamanho do painel (22 mm
neste caso) e a sua posio (do lado direito do corpo do texto). A opo
hideothersubsections, mostra os ttulos de todos os captulos, mas apenas as
4.8 Criar Apresentaes 89
\documentclass[10pt]{beamer}
\mode<beamer>{%
\usetheme[hideothersubsections,
right,width=22mm]{Goettingen}
}
\title{Simple Presentation}
\author[D. Flipo]{Daniel Flipo}
\institute{U.S.T.L. \& GUTenberg}
\titlegraphic{\includegraphics[width=20mm]{USTL}}
\date{2005}
\begin{document}
\begin{frame}<handout:0>
\titlepage
\end{frame}
\section{Um exemplo}
\begin{frame}
\frametitle{Coisas a fazer num domingo tarde}
\begin{block}{podemos\ldots}
\begin{itemize}
\item passear um co\dots \pause
\item ler um livro\pause
\item confundir um gato\pause
\end{itemize}
\end{block}
e muitas outras coisas
\end{frame}
\end{document}
Figura 4.2: Exemplo de cdigo para a classe beamer.
90 Especialidades
subseces do captulo actual. No existem opes especiais para os modos
\mode<trans> e \mode<handout>. Eles aparecem no seu formato standard.
Os comandos \title{}, \author{}, \institute{} e \titlegraphic{}
permitem especicar o contedo da pgina de rosto. Os argumentos opcio-
nais de \title[]{} e \author[]{} permitem-lhe especicar verses especi-
ais do ttulo e do autor para serem mostrados no painel do tema Goettingen.
Os ttulos e subttulos no painel so criados com os comandos normais
\section{} e \subsection{} que usa fora do ambiente frame.
Os pequenos cones de navegao no fundo do ecr tambm lhe permitem
navegar no documento. A sua presena no dependente do tema que
escolher.
Os contedos de cada slide tem de ser colocado dentro de um ambiente
frame. Existe um argumento opcional entre < e >, que permite suprimir de-
terminado slide numa das verses da apresentao. No exemplo, a primeira
pgina no ir ser mostrada na verso handout dado o uso do argumento
<handout:0>.
altamente recomendado que escolha um ttulo para cada slide. Isto
feito com o comando \frametitle{}. Se precisar de um subttulo poder
usar o ambiente block como mostrado no exemplo. Note que os coman-
dos de seces como o \section{} e \subsection{} no criam realmente
contedo nos slides.
O comando \pause no ambiente itemize permite-lhe revelar um item
de cada vez. Para outros efeitos de apresentao veja os comandos \only,
\uncover, \alt e \temporal. Em vrios lugares tambm poder usar < e >
para customizar a sua apresentao.
Em qualquer caso, tenha a certeza que leu a documentao da class
beamer (beameruserguide.pdf) para ter uma ideia completa do que lhe
pode ser til. Este pacote est a ser desenvolvido activamente. Veja o
seu site em http://latex-beamer.sourceforge.net/ para a informao mais
recente.
Captulo 5
Produo de Grcos
Matemticos
A maior parte das pessoas usam o L
A
T
E
X para dactilografar os seus textos. Alm
de permitir e incentivar a estruturao dos textos, o L
A
T
E
X tambm oferece pos-
sibilidades, ligeiramente restritas, para produo de resultados grcos usando
descries textuais. Recentemente, um grande nmero de extenses L
A
T
E
X tm
vindo a ser criadas para ultrapassar estes problemas. Nesta seco, ir aprender
a usar algumas delas.
5.1 Introduo
O ambiente picture permite a programao de imagens directamente em
L
A
T
E
X Uma descrio detalhada pode ser encontrada no L
A
T
E
X Manual [1].
Por um lado, existem um conjunto de restries severas, como os tipos de
segmentos ou raios de crculos que esto estritos a um pequeno conjunto
de valores. Por outro, o ambiente picture do L
A
T
E
X2
contm o comando
\qbezier, onde o q signica quadrtica. A maior parte das curvas usa-
das como crculos, elipses e outras podem ser aproximadas de forma satis-
fatria usando curvas de Bzier quadrticas, mesmo que obriguem a alguns
clculos matemticos. Por outro lado, se uma linguagem de programao
como o Java for usada para gerar blocos \qbezier para documentos L
A
T
E
X,
o ambiente picture torna-se bastante poderoso.
Apesar da programao de imagens directamente em L
A
T
E
X seja bastante
restrita, e normalmente bastante cansativa, existem boas razes para o fa-
zer. Os documentos produzidos desta forma so pequenos em relao ao
tamanho ocupado, e no so necessrios cheiros extra.
Pacotes como o epic e eepic (descritos, por exemplo, no The L
A
T
E
X Com-
panion [3]), ou pstricks ajudam a eliminar estas restries substituindo o
ambiente original picture, e melhorando signicativamente o poder grco
do L
A
T
E
X.
92 Produo de Grcos Matemticos
Enquanto que os dois pacotes anteriores simplesmente melhoram o ambi-
ente picture, o pstricks tem o seu prprio ambiente de desenho: pspicture.
O poder do pstricks vem do facto de que este pacote faz uso extensivo das
potencialidades do PostScript. Outros pacotes tm vindo a ser escritos
para ns especcos. Um destes o X
Y
-pic, descrito no nal deste captulo.
Uma grande variedade destes pacotes descrito em detalhe no The L
A
T
E
X
Graphics Companion [12] (no confundir com o The L
A
T
E
X Companion [3]).
Porventura, a ferramenta mais poderosa para grcos em L
A
T
E
X o
MetaPost, o gmeo do METAFONT de Donald E. Knuth. O MetaPost inclu a
poderosa e sosticada linguagem de programao do METAFONT. No entanto,
enquanto que o METAFONT gera mapas de bits (bitmaps), o MetaPost gera
cheiros Encapsulated PostScript, que podem ser importadas no L
A
T
E
X.
Para uma introduo leia o A Users Manual for MetaPost [15], ou o tutorial
em [17].
Uma discusso mais aprofundada das estratgias do L
A
T
E
X e T
E
X para
grcos (e tipos de letra) pode ser encontrada em T
E
X Unbound [16].
5.2 O ambiente picture
By Urs Oswald <osurs@bluewin.ch>
5.2.1 Comandos Bsicos
O ambiente picture
1
criado com um dos seguintes comandos
\begin{picture}(r, j). . . \end{picture}
ou
\begin{picture}(r, j)(r
0
, j
0
). . . \end{picture}
Os nmeros r, j, r
0
, j
0
referem-se ao \unitlength (comprimento da
unidade de desenho), que pode ser mudada em qualquer altura (fora dos
ambientes picture com um comando semelhante a
\setlength{\unitlength}{1.2cm}
O valor por omisso de \unitlength 1pt. O primeiro par, (r, j),
obriga a que se reserve, dentro do documento, do espao rectangular para a
imagem. O segundo par (opcional), (r
0
, j
0
), atribu coordenadas arbitrrias
ao canto inferior esquerdo do rectngulo reservado.
1
Acredite ou no, o ambiente picture funciona directamente, em L
A
T
E
X2
standard,
sem necessitar de carregar qualquer pacote.
5.2 O ambiente picture 93
Quase todos os comandos de desenho tm uma de duas formas
\put(r, j){objecto}
ou
\multiput(r, j)(r, j){n}{objecto}
As curvas de Bzier no so uma excepo. So desenhadas com o co-
mando
\qbezier(r
1
, j
1
)(r
2
, j
2
)(r
3
, j
3
)
5.2.2 Segmentos de Recta
\setlength{\unitlength}{5cm}
\begin{picture}(1,1)
\put(0,0){\line(0,1){1}}
\put(0,0){\line(1,0){1}}
\put(0,0){\line(1,1){1}}
\put(0,0){\line(1,2){.5}}
\put(0,0){\line(1,3){.3333}}
\put(0,0){\line(1,4){.25}}
\put(0,0){\line(1,5){.2}}
\put(0,0){\line(1,6){.1667}}
\put(0,0){\line(2,1){1}}
\put(0,0){\line(2,3){.6667}}
\put(0,0){\line(2,5){.4}}
\put(0,0){\line(3,1){1}}
\put(0,0){\line(3,2){1}}
\put(0,0){\line(3,4){.75}}
\put(0,0){\line(3,5){.6}}
\put(0,0){\line(4,1){1}}
\put(0,0){\line(4,3){1}}
\put(0,0){\line(4,5){.8}}
\put(0,0){\line(5,1){1}}
\put(0,0){\line(5,2){1}}
\put(0,0){\line(5,3){1}}
\put(0,0){\line(5,4){1}}
\put(0,0){\line(5,6){.8333}}
\put(0,0){\line(6,1){1}}
\put(0,0){\line(6,5){1}}
\end{picture}
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
'
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
>
>
>
>
>
>
>
y
g
g
g
g
gy
_
,__
_
`
_
`
_
`
_
`
_
_
, g _
O comando
\put(r, j){\circle{diametro}}
desenha um crculo com centro em (r, j) e dimetro (no o raio) diametro.
O ambiente picture s admite dimetros at aproximadamente 14 mm, e
mesmo abaixo desse dimetro nem todos so possveis. O comando \circle*
produz discos (crculos cheios).
Como no caso dos segmentos de recta, poder ter de recorrer a outros
pacotes como eepic ou pstricks. Para uma descrio detalhada destes pacotes
consulte o The L
A
T
E
X Graphics Companion [12].
Tambm existe a possibilidade de as fazer dentro de um ambiente picture
desde que no tenha medo de fazer os clculos necessrios (ou obrigar um
programa a faz-los), usando curvas quadrticas de Bzier. Veja Graphics
in L
A
T
E
X2
r
r
r
r
r
1
C
o
/
c
1 =
_
:(: o)(: /)(: c)
: :=
o + / + c
2
Como este exemplo mostra, texto e frmulas podem ser escritas num
ambiente picture usando o comando \put da forma usual.
5.2.6 \multiput e \linethickness
\setlength{\unitlength}{2mm}
\begin{picture}(30,20)
\linethickness{0.075mm}
\multiput(0,0)(1,0){26}%
{\line(0,1){20}}
\multiput(0,0)(0,1){21}%
{\line(1,0){25}}
\linethickness{0.15mm}
\multiput(0,0)(5,0){6}%
{\line(0,1){20}}
\multiput(0,0)(0,5){5}%
{\line(1,0){25}}
\linethickness{0.3mm}
\multiput(5,0)(10,0){2}%
{\line(0,1){20}}
\multiput(0,5)(0,10){2}%
{\line(1,0){25}}
\end{picture}
O comando
\multiput(r, j)(r, j){n}{objecto}
tem 4 argumentos: o ponto inicial, o vector de translao de um objecto para
5.2 O ambiente picture 97
o prximo, o nmero de objectos, e o objecto a ser desenhado. O comando
\linethickness aplica-se a segmentos horizontais e verticais mas nunca a
segmentos de recta oblquos ou crculos. No entanto, aplicado a curvas
quadrticas de Bzier.
5.2.7 Ovais
\setlength{\unitlength}{0.75cm}
\begin{picture}(6,4)
\linethickness{0.075mm}
\multiput(0,0)(1,0){7}%
{\line(0,1){4}}
\multiput(0,0)(0,1){5}%
{\line(1,0){6}}
\thicklines
\put(2,3){\oval(3,1.8)}
\thinlines
\put(3,2){\oval(3,1.8)}
\thicklines
\put(2,1){\oval(3,1.8)[tl]}
\put(4,1){\oval(3,1.8)[b]}
\put(4,3){\oval(3,1.8)[r]}
\put(3,1.5){\oval(1.8,0.4)}
\end{picture}
5
4
2
3
_
5
4 3
2
3
O comando
\put(r, j){\oval(n, /)}
ou
\put(r, j){\oval(n, /)[posio]}
produzem uma oval centrada em (r, j) com largura n e altura /. O argu-
mento opcional posio que pode ser um entre b, t, l, r, referem-se a top
(topo), bottom (fundo), left (esquerda), right (direita), e podem ser
combinados como o exemplo ilustra.
A grossura das linhas pode ser controlada com dois tipos de comandos:
\linethickness{comprimento} por um lado, \thinlines e \thicklines
por outro. Enquanto que \linethickness{comprimento} s se aplica a
linhas verticais e horizontais (e curvas quadrticas de Bzier), \thinlines e
\thicklines aplicam-se tambm a segmentos oblquos assim como a crculos
e ovais.
98 Produo de Grcos Matemticos
5.2.8 Mltiplos usos de caixas de imagem pr-denidas
\setlength{\unitlength}{0.5mm}
\begin{picture}(120,168)
\newsavebox{\foldera}
\savebox{\foldera}
(40,32)[bl]{% definio
\multiput(0,0)(0,28){2}
{\line(1,0){40}}
\multiput(0,0)(40,0){2}
{\line(0,1){28}}
\put(1,28){\oval(2,2)[tl]}
\put(1,29){\line(1,0){5}}
\put(9,29){\oval(6,6)[tl]}
\put(9,32){\line(1,0){8}}
\put(17,29){\oval(6,6)[tr]}
\put(20,29){\line(1,0){19}}
\put(39,28){\oval(2,2)[tr]}
}
\newsavebox{\folderb}
\savebox{\folderb}
(40,32)[l]{% definio
\put(0,14){\line(1,0){8}}
\put(8,0){\usebox{\foldera}}
}
\put(34,26){\line(0,1){102}}
\put(14,128){\usebox{\foldera}}
\multiput(34,86)(0,-37){3}
{\usebox{\folderb}}
\end{picture}
Uma caixa de imagem pode ser declarada pelo comando
\newsavebox{nome}
e posteriormente denida por
\savebox{nome}(largura,altura)[posio]{contedo}
e nalmente, desenhada arbitrariamente usando
\put(r, j)\usebox{nome}
O argumento opcional posio tem o efeito de denir o ponto de ncora
da caixa a guardar. No exemplo, colocado com o valor bl que coloca a
ncora no canto inferior esquerdo da caixa. Os outros especicadores de
localizao so top (topo) e right (direita).
5.2 O ambiente picture 99
O argumento nome refere-se a um nome a guardar numa das caixas do
L
A
T
E
X e portante de natureza semelhante a um comando (o que obrigou s
barras invertidas do exemplo). As caixas com imagem podem ser aninhadas:
neste exemplo, o \foldera usado dentro da denio do \folderb.
O comando \oval no ir funcionar se o comprimento do segmento
menor que cerca de 3 mm.
5.2.9 Curvas de Bzier Quadrticas
\setlength{\unitlength}{0.8cm}
\begin{picture}(6,4)
\linethickness{0.075mm}
\multiput(0,0)(1,0){7}
{\line(0,1){4}}
\multiput(0,0)(0,1){5}
{\line(1,0){6}}
\thicklines
\put(0.5,0.5){\line(1,5){0.5}}
\put(1,3){\line(4,1){2}}
\qbezier(0.5,0.5)(1,3)(3,3.5)
\thinlines
\put(2.5,2){\line(2,-1){3}}
\put(5.5,0.5){\line(-1,5){0.5}}
\linethickness{1mm}
\qbezier(2.5,2)(5.5,0.5)(5,3)
\thinlines
\qbezier(4,2)(4,3)(3,3)
\qbezier(3,3)(2,3)(2,2)
\qbezier(2,2)(2,1)(3,1)
\qbezier(3,1)(4,1)(4,2)
\end{picture}
$
$
$
$
$
'
'
'
'
'
'
Como este exemplo ilustra, dividir um crculo em 4 curvas quadrticas
de Bzier no satisfatrio. Pelo menos so precisas 8. A gura mostra
o efeito do comando \linethickness em linhas horizontais ou verticais, e
o efeito dos comandos \thinlines e \thicklines em segmentos de recta
oblquos. Tambm mostra que ambos os tipos de comando afectam as curvas
quadrticas de Bzier, cada comando substituindo todos os anteriores.
Se 1
1
= (r
1
, j
1
), 1
2
= (r
2
, j
2
) representarem os extremos, e :
1
, :
2
as
respectiva curvatura de uma curva quadrtica de Bzier, o ponto intermdio
de controlo o = (r, j) dado pelas equaes
_
_
_
r =
:
2
r
2
:
1
r
1
(j
2
j
1
)
:
2
:
1
,
j = j
i
+ :
i
(r r
i
) (i = 1, 2).
(5.1)
Veja o Graphics in L
A
T
E
X2
r
`
j
g
Nesta gura, cada metade simtrica da parbola j = cosh r1 apro-
ximada por uma curva quadrtica de Bzier. A metade do lado direito da
curva termina no ponto (2, 2.7622), com a inclinao com valor : = 3.6269.
Usando de novo a equao (5.1), podemos calcular os pontos intermdios
de controlo: (1.2384, 0) e (1.2384, 0). As cruzes indicam pontos da pa-
rbola real. O erro quase que passa despercebido, sendo menor do que um
por cento.
Este exemplo mostra o uso do argumento opcional do comando \begin{picture}.
A gura denida em coordenadas matemticas, pelo que o comando
\begin{picture}(4.3,3.6)(-2.5,-0.25)
faz com que o seu canto inferior esquerdo (marcado pelo disco preto) esteja
nas coordenadas (2.5, 0.25).
5.3 X
Y
-pic 101
5.2.11 Rapidamente a teoria da Relatividade
\setlength{\unitlength}{0.8cm}
\begin{picture}(6,4)(-3,-2)
\put(-2.5,0){\vector(1,0){5}}
\put(2.7,-0.1){$\chi$}
\put(0,-1.5){\vector(0,1){3}}
\multiput(-2.5,1)(0.4,0){13}
{\line(1,0){0.2}}
\multiput(-2.5,-1)(0.4,0){13}
{\line(1,0){0.2}}
\put(0.2,1.4)
{$\beta=v/c=\tanh\chi$}
\qbezier(0,0)(0.8853,0.8853)
(2,0.9640)
\qbezier(0,0)(-0.8853,-0.8853)
(-2,-0.9640)
\put(-3,-2){\circle*{0.2}}
\end{picture}
`
= ,c = tanh
/
1
1
O
C
o
O comando para desenhar a seta colocado na clula de origem da seta.
O argumento a direco para a qual a seta deve apontar: esquerda (left),
direita (right), cima (up) ou para baixo (down).
\begin{displaymath}
\xymatrix{
A \ar[d] \ar[dr] \ar[r] & B \\
D & C }
\end{displaymath}
@
@
@
@
@
@
@
/
1
1 C
Para criar diagonais, junte mais do que uma direco. De facto, at pode
repetir direces para criar setas mais compridas.
\begin{displaymath}
\xymatrix{
A \ar[d] \ar[dr] \ar[drr] & & \\
B & C & D }
\end{displaymath}
@
@
@
@
@
@
@
'
P
P
P
P
P
P
P
P
P
P
P
P
P
P
1 C 1
Podemos desenhar diagramas ainda mais interessantes adicionando eti-
quetas s setas. Para isto, usamos os operadores habituais para expoentes
e ndices.
\begin{displaymath}
\xymatrix{
A \ar[r]^f \ar[d]_g &
B \ar[d]^{g} \\
D \ar[r]_{f} & C }
\end{displaymath}
f
/
g
1
g
1
f
/
C
Como mostrado, usa estes operadores como em modo matemtico. A
nica diferena que o expoente signica em cima da seta, e ndice signica
5.3 X
Y
-pic 103
por baixo da seta. Existe ainda um terceiro operador, a barra vertical: |
que coloca o texto dentro da seta.
\begin{displaymath}
\xymatrix{
A \ar[r]|f \ar[d]|g &
B \ar[d]|{g} \\
D \ar[r]|{f} & C }
\end{displaymath}
f
/
g
1
g
1
f
/
C
Para desenhar uma seta com um buraco, use \ar[...]|\hole.
Em algumas situaes, importante distinguir entre diferentes tipos de
setas. Isto pode ser feito colocando-lhe etiquetas, ou mudando a sua apa-
rncia:
\shorthandoff{"}
\begin{displaymath}
\xymatrix{
\bullet\ar@{->}[rr] && \bullet\\
\bullet\ar@{.<}[rr] && \bullet\\
\bullet\ar@{~)}[rr] && \bullet\\
\bullet\ar@{=(}[rr] && \bullet\\
\bullet\ar@{~/}[rr] && \bullet\\
\bullet\ar@{^{(}->}[rr] &&
\bullet\\
\bullet\ar@2{->}[rr] && \bullet\\
\bullet\ar@3{->}[rr] && \bullet\\
\bullet\ar@{=+}[rr] && \bullet
}
\end{displaymath}
\shorthandon{"}
_
?
/o /o /o /o /o /o /o
/o /o /o /o /o /o /o
/
_4
//
\begin{displaymath}
\xymatrix{
\bullet \ar@/^/[r]
\ar@/_/@{.>}[r] &
\bullet
}
\end{displaymath}
(
6
Os modicadores entre as barras dene a forma como as curvas so
desenhadas. O X
Y
-pic oferece muitas mais formas de inuenciar o desenho
das curvas; para mais informao, veja a documentao e o tutorial de X
Y
-
pic.
Captulo 6
Congurar o L
A
T
E
X
Os documentos produzidos usando os comandos apresentados at aqui parecero
aceitveis a uma grande audincia. No seguem um estilo muito trabalhado,
mas obedecem s regras estabelecidas como correctas para um bom documento,
e que faro o documento agradvel e agradvel de ler.
No entanto, existem situaes onde o L
A
T
E
X no dispe de comandos ou
ambientes que satisfaam as suas necessidades, ou o resultado produzido por
um comando j existente no est de acordo com os seus requisitos.
Este captulo tentar dar algumas ideias sobre como ensinar novos truques
ao L
A
T
E
X e como faz-lo produzir resultados que so diferentes aos disponveis
de raz.
6.1 Novos Comandos, Ambientes e Pacotes
Deve ter reparado que todos os comandos que introduzi neste livro so apre-
sentados numa caixa, e que aparecem no ndice no m do livro. Em vez de
usar directamente os comandos L
A
T
E
X necessrios para obter este resultado,
criei um pacote no qual deni novos comandos e ambientes para este m.
Agora, escrevo simplesmente:
\begin{lscommand}
\ci{dum}
\end{lscommand}
\dum
Neste exemplo estou a utilizar quer um novo ambiente chamado
lscommand, que responsvel por desenhar a caixa volta do comando, e um
novo comando denominado \ci que escreve o nome do comando e tambm
coloca a entrada correspondente no ndice. Pode vericar isto olhando para
o comando \dum no ndice no m deste livro, onde aparecer uma entrada
para \dum, apontando cada uma das pginas onde mencionei o comando
\dum.
106 Congurar o L
A
T
E
X
Se decidir que j no gosto que os comandos sejam escritos numa caixa,
posso alterar simplesmente a denio do ambiente lscommand para criar
uma nova aparncia. Isto muito mais fcil do que andar por todo o do-
cumento caa de todos os lugares onde usei alguns comandos genricos
L
A
T
E
X para desenhar uma caixa volta de algumas palavras.
6.1.1 Novos Comandos
Para adicionar os seus prprios comandos, use o comando
\newcommand{nome}[num]{denio}
Basicamente, o comando necessita de dois argumentos: o nome do comando
que quer criar, e a denio do comando. O argumento num em parntesis
rectos opcional e especica o nmero de argumentos que o novo comando
recebe (so possveis at 9). Se no especicar, o valor utilizado 0, ou seja,
nenhum argumento permitido.
Os dois exemplos seguintes devem ajudar a apanhar a ideia. O primeiro
exemplo dene um novo comando chamado \npil. Este um atalho para
A No To Pequena Introduo ao L
A
T
E
X2
. . . A No To Pequena
Introduo ao L
A
T
E
X2
L
A
T
E
X no permite que crie um novo comando que substitua um j exis-
tente. Mas, existe um comando especial no caso de querer fazer isto. Nesse
caso, use explicitamente o comando \renewcommand que funciona da mesma
forma que o comando \newcommand.
6.1 Novos Comandos, Ambientes e Pacotes 107
Em alguns casos, pode querer usar o comando \providecommand que
funciona como o \newcommand, mas se o comando j existir, o L
A
T
E
X ir
ignora-lo silenciosamente.
Existem alguns pontos a tomar em conta quando existem espaos aps
comandos L
A
T
E
X. Veja a pgina 6 para mais informao.
6.1.2 Novos Ambientes
Tal como com o comando \newcommand, existe tambm um comando para
criar os seus prprios ambientes. O comando \newenvironment usa a se-
guinte sintaxe:
\newenvironment{nome}[num]{antes}{depois}
De novo, o comando \newcommand pode usar \newenvironment com um
argumento opcional. O material especicado no argumento antes, proces-
sado antes do texto incluso no ambiente seja processado. O contedo do
argumento depois processado quando o comando \end{nome} encon-
trado.
O seguinte exemplo ilustra a utilizao do comando \newenvironment.
\newenvironment{king}
{\rule{1ex}{1ex}%
\hspace{\stretch{1}}}
{\hspace{\stretch{1}}%
\rule{1ex}{1ex}}
\begin{king}
Os meus pensamentos \ldots
\end{king}
Os meus pensamentos . . .
O argumento num usado da mesma forma que o do \newcommand.
O L
A
T
E
X tambm no permite que dena um ambiente que j exista. Se
por alguma razo quiser mudar um ambiente j existente, pode faz-lo
com o comando \renewenvironment que usa a mesma sintaxe do comando
\newenvironment.
O comando usado neste exemplo ir ser explicado mais tarde: Para o
comando \rule veja a pgina 121, para \stretch v pgina 115, e mais
informao sobre \hspace pode ser encontrada na pgina 114.
6.1.3 Expao Extra
Ao criar um novo ambiente poder vir a ser mordido por espaos extra, que
o iro fazer tremer, e que potencialmente tero efeitos mortferos. Por exem-
plo, quando desejar criar um ambiente de ttulo que remove a sua prpria
indentao assim como a do prximo pargrafo. O comando \ignorespaces
108 Congurar o L
A
T
E
X
no bloco de incio da denio do ambiente ir ignorar qualquer espao
aps a sua execuo. O bloco nal da denio ligeiramente mais compli-
cado, visto que algum processamento especial ocorre no nal do ambiente.
Com o comando \ignorespacesafterend o L
A
T
E
X ir colocar o comando
\ignorespaces depois do processamento especial de nal de ambiente ter
ocorrido.
\newenvironment{simples}%
{\noindent}%
{\par\noindent}
\begin{simples}
Ver o espao\\ esquerda.
\end{simples}
O mesmo\\aqui.
Ver o espao
esquerda.
O mesmo
aqui.
\newenvironment{correcto}%
{\noindent\ignorespaces}%
{\par\noindent
\ignorespacesafterend}
\begin{correcto}
Sem espaos\\ esquerda.
\end{correcto}
O mesmo\\aqui.
Sem espaos
esquerda.
O mesmo
aqui.
6.1.4 A linha de comando do L
A
T
E
X
Se trabalhar num sistema operativo tipo Unix, poder usar Makeles para
construir os seus projectos L
A
T
E
X. Nesta ligao poder ser interessante
produzir verses diferentes do mesmo documento chamando o L
A
T
E
X com
parmetros diferentes de linha de comando. Se adicionar a seguinte estrutura
ao seu documento:
\usepackage{ifthen}
\ifthenelse{\equal{\blackandwhite}{true}}{
% Modo "preto e branco"; fazer qualquer coisa...
}{
% Modo "a cores"; fazer qualquer coisa diferente...
}
Agora se invocar o L
A
T
E
X desta forma:
latex \newcommand{\blackandwhite}{true}\input{test.tex}
Primeiro, o comando \blackandwhite ser denido, e depois, o cheiro
ser lido Desta forma, ao denir o \blackandwhite estar a indicar ao L
A
T
E
X
que vai querer produzir a verso a cores do documento.
6.2 Letras e Tamanhos 109
6.1.5 O Seu Prprio Pacote
Se denir um grande nmero de novos comandos e ambientes, o prembulo
do seu documento car bastante longo. Nesta situao, a boa ideia criar
um pacote L
A
T
E
X contendo todas as suas denies de comandos e ambien-
tes. Depois pode usar o comando \usapackage para tornar as denies
disponveis no seu documento.
% Pacote de Demonstrao por Tobias Oetiker
\ProvidesPackage{demopack}
\newcommand{\npil}{A no to Pequena
Introduo ao \LaTeXe}
\newcommand{\txsit}[1]{A \emph{#1} To
Introduo ao \LaTeXe}
\newenvironment{king}{\begin{quote}}{\end{quote}}
Figura 6.1: Pacote de Exemplo.
Escrever um pacote consiste basicamente em copiar o contedo do prem-
bulo do seu documento para um cheiro separado com um nome com a
extenso .sty. Existe um comando especial
\ProvidesPackage{nome do pacote}
para usar no topo do seu pacote. O comando \ProvidesPackage indica
ao L
A
T
E
X o nome do pacote e ir permitir que apresente mensagens de erro
quando tentar incluir mais do que uma vez um pacote. A gura 6.1 mostra
um pequeno exemplo de um pacote que contm os comandos denidos nos
exemplos anteriores.
6.2 Letras e Tamanhos
6.2.1 Tipos de letra
O L
A
T
E
X escolhe os tipos de letra e respectivos tamanhos apropriados baseando-
se na estrutura lgica do documento (seces, notas de rodap, . . . ). Em
alguns casos, pode desejar mudar os tipos ou tamanho de letras mo. Para
fazer isto, pode usar os comandos listados nas tabelas 6.1 e 6.2. O tamanho
de cada tipo de letra uma denio que depende na classe de documento
e nas suas opes. A tabela 6.3 mostra o tamanho absoluto em pontos para
estes comandos como implementados nas classes standard.
110 Congurar o L
A
T
E
X
{\small Os pequenos e
\textbf{gordos} Romanos mandaram}
{\Large em toda a grande
\textit{Itlia}.}
Os pequenos e gordos Romanos manda-
ram em toda a grande Itlia.
Uma propriedade importante do L
A
T
E
X2
`
_
1
_
3
_
10
_
9
`
_
11
_
2
`
_
4
`
_
5
`
_
6
`
como usrguide.tex.
[6] L
A
T
E
X3 Project Team. L
A
T
E
X2
como clsguide.tex.
[7] L
A
T
E
X3 Project Team. L
A
T
E
X2
como fntguide.tex.
[8] D. P. Carlisle. Packages in the graphics bundle. Vem com o conjunto
de ferramentas graphics como grfguide.tex, disponvel da mesma
origem da sua distribuio de L
A
T
E
X.
[9] Rainer Schpf, Bernd Raichle, Chris Rowley. A New Implementa-
tion of L
A
T
E
Xs verbatim Environments. Vem com o conjunto tools
como verbatim.dtx, disponvel da mesma origem da sua distribuio
de L
A
T
E
X.
124 BIBLIOGRAFIA
[10] Vladimir Volovich, Werner Lemberg and L
A
T
E
X3 Project Team. Cyril-
lic languages support in L
A
T
E
X. Vem nas distribuies L
A
T
E
X2
como
cyrguide.tex.
[11] Graham Williams. The TeX Catalogue uma listagem bastante com-
pleta de muitos pacotes relacionados com o T
E
X e o L
A
T
E
X. Disponvel
na Internet desde CTAN:/tex-archive/help/Catalogue/catalogue.
html
[12] Michel Goossens, Sebastian Rahtz and Frank Mittelbach. The L
A
T
E
X
Graphics Companion. Addison-Wesley, Reading, Massachusetts, 1997,
ISBN 0-201-85469-4.
[13] Keith Reckdahl. Using EPS Graphics in L
A
T
E
X2