latex intro

49
i Universidade de S˜ ao Paulo Instituto de F´ ısica de S˜ ao Carlos Introdu¸ ao ao \LaTeX Thiago Schiavo Mosqueiro [email protected] Apostila de introdu¸ ao e consulta ao L A T E X apresentada no Primeiro Encontro de ısicos de S˜ ao Carlos que N˜ ao Sabem Criar Siglas (BREU-SC). 1 a edi¸ ao, mar¸ co de 2007 Volume 1

Upload: thales-estevao

Post on 12-Jun-2015

651 views

Category:

Documents


1 download

DESCRIPTION

introduction latex

TRANSCRIPT

Page 1: Latex Intro

i

Universidade de Sao Paulo

Instituto de Fısica de Sao Carlos

Introducao ao \LaTeX

Thiago Schiavo [email protected]

Apostila de introducao e consulta ao LATEXapresentada no Primeiro Encontro de

Fısicos de Sao Carlos que NaoSabem Criar Siglas (BREU-SC).

1a edicao, marco de 2007Volume 1

Page 2: Latex Intro

ii

Direitos sobre copias por Thiago S. Mosqueiro. Todos os direitosreservados.Este documento e gratuito; pode ser redistribuıdo gratuitamente. Oobjetivo maior desta apostila e resumir em apenas um documento amaior quantidade de informacoes uteis sobre LATEXquanto possıvel.Ao longo das edicoes, uma maior quantidade de informacoes estarasendo adicionada a medida que os usuarios desta apostila vao tendoduvidas.Por isso, peco a todo usuario que, ao ter alguma duvida e/ou veri-ficar a falta de algum topico importante nesta apostila, relatar aoautor, cujo e-mail e [email protected]. A ideia e relancarmultiplas edicoes de forma que quanto mais rapido for possıvel taistopicos estejam inclusos na apostila.

Esta prevista que a proxima edicao desta apostila seja lancada ate dia 1 de agosto,incluindo topicos sobre o sistema CJK, um capıtulo sobre criacao de artigos e mais exemplos.Em caso de sugestoes, nao deixe de enviar ao meu e-mail!Obrigado a todos que lerem e aproveitarem esta apostila...

Page 3: Latex Intro

iii

Page 4: Latex Intro

Agradecimentos

Agradeco a todo usuario que decidir utilizar esta apostilae os que se importarem em me enviar as duvidas e crıticasconstrutivas.

iv

Page 5: Latex Intro

v

Page 6: Latex Intro

Resumo

O TEXe um programa de computador criado por Donald E. Knuth. E devoto a tipografiade texto e formulas matematicas. O motor tipografico comecou a ser escrito em 1977 paraexplorar os potenciais de equipamento digital de impressao que estava a infiltrar na industriade publicacao naquele tempo, especialmente na esperanca de poder alterar o rumo da de-terioracao de qualidade tipografica que ele viu a afectar os seus proprios livros e artigos.Tal como o usamos hoje, o TEXfoi disponibilizado em 1982 com pequenos melhoramentosadicionados em 1989 para suportar da melhor forma os caracteres de 8-bits e multiplas lin-guagens. Tem recebido muitos elogios por ser extremamente estavel, funcionar em muitostipos diferentes de computadores, e virtualmente nao ter qualquer bug. A versao do TEXestaa convergir para π e de momento e 3:14159.

Pronunciamos TEXcomo “Tech”, com um “ch” identico a palavra alema “Auch” ou a es-cocesa “Loch”. Em ambientes ASCII, TEXdeve ser escrito como TeX. O LATEXe um pacote decomandos (macros que permitem que formatos predefinidos, de grande qualidade tipografica,sejam impressos por qualquer autor. Foi escrito originalmente por Leslie Lamport. Usa oTEXcomo o seu motor tipografico. Ultimamente, o LATEXe mantido por Frank Mittelbach.LATEXe pronunciado “Lay-tech” ou “Lah-tech”. Se se referir ao LATEXnum ambiente ASCII,deve escrever LaTeX. “LATEX2” e pronunciado “Lay-tech two e” e escrito LaTeX2e.

Quando as pessoas do mundo WYSIWYG (sistemas em que o autor cria documentoscuja estetica e agradavel, mas sem uma estrutura consistente) conhecem pessoas que usamLATEX, frequentemente discutem “as vantagens do LATEXem relacao a um processador detexto normal 1” ou o contrario. A melhor coisa que se pode fazer quando uma discussao seinicia e manter a calma, porque este tipo de discussao sai facilmente dos limites. Mas porvezes nao se pode escapar. . .

Entao, aqui estao algumas municoes. As principais vantagens do LATEXsobre um proces-sador de texto “normal” sao as seguintes:

• Formatos criados profissionalmente estao disponıveis, que fazem com que um docu-mento criado por qualquer usuario pareca realmente impresso numa tipografia;

• A escrita de formulas matematicas e suportada de uma forma conveniente;

• O utilizador apenas precisa de aprender uma duzia de comandos facilmente compre-enssıveis que especificam a estrutura logica de um documento. Quase nunca se precisaatormentar-se com o formato real do documento;

• Ate estruturas complexas, tais como notas de rodape, referencias, tabelas de conteudose bibliografias podem ser facilmente geradas;

• Pacotes gratuitos podem ser aplicados a tarefas tipograficas nao suportadas pelo LATEXbasico.Por exemplo, existem pacotes para incluir graficos PostScript e para imprimir bi-

1Entenda-se, aqui, como “editor de texto normal” por um editor de texto que e de uso mais comum etem a visualizacao do documento em sua forma final acoplada a edicao.

vi

Page 7: Latex Intro

vii

bliografias conforme os “standards”. Muitos destes pacotes estaao descritos no TheLATEXCompanion;

• O LATEXencoraja os autores a escrever textos bem estruturados porque e assim que oLATEXfunciona - especificando a estrutura;

• TEX, o motor de formatacao do Latex2, e extremamente portavel e livre. Desta forma,o sistema funciona em quase todas as plataformas de hardware existentes.

O LATEXtambem tem algumas desvantagens, e penso que e um pouco difıcil para mimencontrar alguma, mas parece-me que outras pessoas podem indicar centenas.

• LATEXnao funciona bem para pessoas que tenham vendido a sua alma . . . ;

• Apesar de alguns parametros poderem ser ajustados num formato pre-definido, o de-senho de todo um novo formato e difıcil e demora muito tempo 2;

• E difıcil de escrever documentos mal estruturados e desorganizados;

• Embora o seu hamster demonstre alguma dedicacao durante os primeiros passos, nuncaconseguira digerir completamente o conceito de marcacao logica.

O primeiro comando em LATEXque costuma-se ser passado e o comando que gera o sımbolo“LATEX”. O comando e

\LaTeX .

2Rumores dizem que este e um dos pontos chave a ser abordado na versao 3 do Latex.

Page 8: Latex Intro

viii

Page 9: Latex Intro

Conteudo

Agradecimentos iv

Resumo vi

1 Compilador e formato do arquivo fonte 1

1.1 Programa para compilar o arquivo fonte . . . . . . . . . . . . . . . . . . . . 1

1.2 Formato do arquivo fonte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 O Preambulo 3

3 Quanto ao texto... 6

3.1 Paragrafos e alinhamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3.2 Caracteres reservados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.3 Tıtulos, capıtulos e secoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.4 Teoremas e proposicoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.5 Estilos, fontes e tamanhos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.6 Sublinhado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.7 Listas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.8 Tal qual... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.9 Ambiente para citacoes e versos . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.10 Espacos em branco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.11 Brincando com cores no texto . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4 Ambiente Matematico 14

4.1 Ambiente “equation” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

4.2 Ambiente “eqnarray” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

4.2.1 Montando sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

4.3 Letras gregas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

4.4 Parenteses e similares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4.5 Sımbolos matematicos e estilos de fontes . . . . . . . . . . . . . . . . . . . . 16

4.6 Funcoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4.7 Matrizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

4.8 Lapidando o ambiente matematico . . . . . . . . . . . . . . . . . . . . . . . 18

4.9 Fantasma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

5 Produzindo graficos matematicos 20

5.1 Um ambiente especıfico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

5.2 Segmentos de reta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

5.3 O LatexDraw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

ix

Page 10: Latex Intro

x CONTEUDO

6 Detalhes, Indices e Figuras 236.1 Referencias Cruzadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236.2 Posicionamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246.3 Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246.4 Inserindo figuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256.5 Conjunto de figuras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256.6 Tratando tabelas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266.7 Listas de figuras e tabelas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286.8 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286.9 Ligacoes Hipertexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286.10 Referencias bibliograficas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296.11 Indice Remissivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306.12 Notas de rodape e nas margens . . . . . . . . . . . . . . . . . . . . . . . . . 316.13 Dividindo o arquivo fonte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316.14 Protegendo comandos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

A Todas as Letras Gregas 33

B Sımbolos Matematicos 34

C Curvas de Bezier 36C.1 Caso geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

C.1.1 Curva de Bezier linear . . . . . . . . . . . . . . . . . . . . . . . . . . 36C.1.2 Curva de Bezier quadratica . . . . . . . . . . . . . . . . . . . . . . . 37C.1.3 Curva de Bezier cubica . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Page 11: Latex Intro

Lista de Tabelas

3.1 Possıveis divisoes para a clase “artigo”. . . . . . . . . . . . . . . . . . . . . . 83.2 Tabela com a lista de tamanhos de fonte para o modo texto. . . . . . . . . . 103.3 Fontes utilizadas dentro do modo texto. . . . . . . . . . . . . . . . . . . . . . 103.4 Tipos de sublinhado e os respectivos exemplos. . . . . . . . . . . . . . . . . . 11

4.1 Alguns exemplos de letras gregas em LATEX. . . . . . . . . . . . . . . . . . . 164.2 Tabela de fontes para ambientes matematicos. . . . . . . . . . . . . . . . . . 17

6.1 Tabela com as opcoes de posicionamento. . . . . . . . . . . . . . . . . . . . . 246.2 Tabela com as opcoes a serem utilizadas no comando “includegraphics”. . . . 256.3 Alguns exemplos de letras gregas em LATEX. . . . . . . . . . . . . . . . . . . 27

A.1 Todas as letras gregas minusculas, com suas respectivas variacoes. . . . . . . 33

B.1 Sımbolos matematicos muito comuns. . . . . . . . . . . . . . . . . . . . . . . 34B.2 Sımbolos para todos os tipos de flechas. . . . . . . . . . . . . . . . . . . . . . 35

xi

Page 12: Latex Intro

Capıtulo 1

Compilador e formato do arquivofonte

“ There´s something you can´t ride,It´s when you´re crippled inside ”

John Lennon

Todo arquivo escrito em Latex devera ser escrito em qualquer editor de texto que naoinclua marcacoes ou codigos extras as letras. Teste visualizar um documento utilizado no“word” (da Microsoft) ou em algum outro editor de texto bem comum em algum editor detexto bem basico (no Windows, o bloco de Notas; no Linux, ViM, por exemplo). Sugiro doiseditores de texto: Emacs (editor de texto em geral, muito utilizado por programadores deFortran) ou TexNicCenter (editor especıfico para Latex, possui diversos atalhos para insercaode formulas ou comandos mais extensos).

1.1 Programa para compilar o arquivo fonte

Nao vou comentar muito sobre os programas utilizados para o Linux (por saber que meupublico alvo utiliza, em grande maioria, Windows), mas o mais utilizado e o “Te-Tex”. ParaWindows, sugiro a utilizacao do MikTex 1, uma distribuicao gratuita de diversas rotinas japrontas para edicao de textos em formato profissional (por exemplo, para criacao de artigoscientıficos).

Ao baixar o instalador, voce precisara realizar alguns passos. Primeiramente, ira baixaros arquivos que realmente serao instalados. Por isso, execute o programa copiado e selecionea opcao “download MikTex”. Sugiro que a versao basica seja instalada (demora muito paracarregar todos os arquivos da versao completa, e caso algum arquivo falte e voce necessite,durante a compilacao o MikTex perguntara se voce desejara instala-lo). Terminado o “down-load”, execute novamente o programa e selecione a opcao “Installing MikTex”. A versao 2.5esta boa, mas em algumas maquinas apresenta problemas. Mesmo assim, prefiro a versao2.5 a 2.4. Apenas uma questao de velocidade e qualidade na criacao de alguns formatos deleitura que discutiremos mais tarde.

Em geral, o instalador pode ser utilizado com o Prompt. A sintaxe para compilar umarquivo fonte e gerar um formato dvi e “latex nome.tex”, sendo “nome” o nome do arquivo.Para “pdf”, “pdflatex nome.tex”. Lembre-se sempre de compilar o arquivo fonte ao menosduas vezes, pois o Latex cria diversos arquivos auxiliares para geracao da formatacao correta(links, imagens, referencias). Por isso, e muito comum compilar uma vez o arquivo fonte em

1Este compilador pode ser encontrado na url Project MikTeX

1

Page 13: Latex Intro

2 CAPITULO 1. COMPILADOR E FORMATO DO ARQUIVO FONTE

Latex, rodar o makeindex (6.11) e o bibtex (6.10) e, em seguida, compilar o arquivo fontemais duas vezes.

1.2 Formato do arquivo fonte

O formato do arquivo fonte e bem simples. Todo o texto sera digitado normalmente comodigitamos normalmente. Quando quisermos utilizar as formulas, inserir figuras ou separartextos em secoes, entao utilizaremos codigos especiais que serao discutidos um a um, masnao me preocuparei em discutir uma grande quantidade de codigos. Os comandos todos doLatex sao extremamente simples e logicos, basta entender a logica e deixar-se arriscar. Outravantagem e o fato de que o Latex e ja foi muito discutido em foruns diversos pela internet, oque facilita a procura de solucoes de duvidas quaisquer, ainda mais que praticamente todoprofessor (ao menos, de universidade) sabe utilizar. Dominando os codigos e comandos, vocepodera criar documentos com design de artigos cientıficos com facilidade, verificando que oLatex realiza todo o trabalho para voce. De fato, talvez voce sofra no comeco, mas a garantiade que o trabalho, com o tempo, sera recompensado e certa.

Geralmente, costuma-se dividir o arquivo fonte em duas partes. A primeira, costumei-ramente conhecida como “preambulo”, e usada para configurar o documento: desde estilo(livro, carta, slides, artigo) ate o formato da pagina. Tambem no preambulo estarao ospacotes utilizados pelo arquivo, que, como veremos, definirao caracterısticas e opcoes a maisque seu arquivo podera acessar. Por ultimo, ficam tambem no preambulo as abreviacoes ealgumas definicoes importantes. O preambulo, comumente, e deixado pronto como padrao,para que apenas o corpo do documento seja modificado. Por exemplo, um artigo semprevai necessitar utilizar folha A4 (ou semelhante), ser apresentado em duas colunas, conterbibliografia, utilizar o pacote de insercao de imagens e apresentara teoremas. Todas estasopcoes serao definidas no preambulo.

Fora o preambulo, teremos o corpo do arquivo, onde estarao os comandos e todo odocumento em si.

Page 14: Latex Intro

Capıtulo 2

O Preambulo

“ Nao tenho certeza de nada,mas a visao das estrelas me faz sonhar. . . ”

Vincent Van Gogh

Todo arquivo em latex devera iniciar-se com um “\documentclass”, que definira a classedo documento, ou seja, definira se o documento e um artigo, livro ou qualquer outro estilode documento. Outros tipos possıveis que podem aparecer no lugar de “book” e “article”,“report”, “slide” e “revtex4”. Quanto ao revtex4, este e um estilo nao tao usual de montagemde artigos, diferente do article. O revtex4 faz com que o artigo tenha uma parte so para otıulo e resumo e tambem utiliza mais a folha do que o article (sem nenhum modificador).Esta apostila, por exemplo, tem o seguinte preambulo:

\documentclass[a4paper,12pt]book

\usepackage[portuguese]babel

\usepackage[ansinew]inputenc

\usepackagegraphicx

\usepackage[colorlinks,pagebackref,hyperindex]hyperref

No preambulo mostrado acima, o \documentclass esta seguido de um [a4paper,12pt]

antes de especificar que o estilo e “book”. Na verdade, em todo o preambulo, qualquer co-mando que tiver indicacoes mais especıficas aceitam tal sintaxe. No caso do \documentclass,as possıveis opcoes sao:

1. Tamanho: Padrao da letra: 11pt ou 12pt(pontos), o ultimo e usado com mais frequencia;

2. twoside: Que imprime em ambos os lados da pagina;

3. oneside: Imprime em um so lado da pagina;

4. twocolumn: Produz o texto disposto em duas colunas na pagina; onecolumn: Produzo texto disposto em uma coluna;

5. landscape: Produz uma pagina na forma de paisagem;

6. leqno: Isto faz com que a numeracao das formulas sejam colocadas a esquerda em vezde a direita;

3

Page 15: Latex Intro

4 CAPITULO 2. O PREAMBULO

7. fleqn: Faz com que a formula fique localizada na margem esquerda em vez de estarcentralizada;

8. openright: Faz com que os capıtulos sejam iniciados apenas nas paginas ımpares;

9. openany: Permite que os capıtulos sejam iniciados nas paginas ımpar ou par.

Tendo definido o estilo do documento, precisaremos agora definir quais os pacotes que seraoutilizados. Fica bem claro o como precisaremos fazer isto observando o exemplo. O comandoque chama os pacotes tem a sintaxe \usepackage[...]nome-do-pacote e os principaispacotes que utilizaremos sao:

1. babel: este pacote traduz a estrutura (abstract e trocado por resumo, por exem-plo) e acerta a hifenizacao do Latex, fazendo com que as palavras sejam dividi-das corretamente (no caso de hifenizacao para o portugues, deve-se utilizar a opcao[portuguese]);

2. [ansinew]inputenc: este pacote fara com que os acentos digitados sejam converti-dos, na compilacao, para os acentos que o Latex reconhece de fato (na verdade, ori-ginalmente, o Latex funcionada apenas se o usuario digitasse certos codigos especiaispara a acentuacao tambem 1), o que torna a digitacao muito mais veloz;

3. graphicx: este pacote fara com que graficos possam ser inseridos no documento. Emgeral, prefere-se arquivos em “ps”, “pdf” ou “eps”. Para outros formatos, e necessariooutro pacote mais especıfico (o MikTex fara seu download, basta cita-lo no preambulo);

4. color: simplesmente para utilizar cores no texto;

5. amsfonts: define alguns estilos de letras para o ambiente matematico;

Outros pacotes poderao ser adicionados conforme se fizer necessaria sua utilizacao. Ja ficoutambem claro que os comandos em Latex parecem ter uma marca que os identifica: todosos comandos comecam com “\” e sao seguidos das ordens. De fato, isso sera constante eocorrera durante todo o processo de criacao do documento.

O preambulo ainda permite que o usuario crie novas definicoes para comandos e secoesespeciais como teoremas. Observe a seguir o que pode ser feito.

Teorema 2.0.1 (da Queda para Inteiros Negativos) Se n e um inteiro positivo, entaoDx(x

−n) = −nx−n−1.

Demonstracao: Utilizando a definicao de x−n, a regra do quociente e a regra da potencia,

Dx(x−n) = Dx(1xn

)

=xn(0)− 1(nxn−1)

(xn)2

=−nxn−1

x2n= (−n)x(n−1)−2n

= (−n)x−n−1 (2.1)

Mas tudo o que precisei digitar foi o conteudo do teorema e da prova.

1Eu peguei essa “epoca”...

Page 16: Latex Intro

5

\beginteor[da Queda para Inteiros Negativos]

\\Se $n$ e um inteiro positivo, ent~ao $D_x(x^-n) = -n x^-n-1$.\labelteorema

\endteor

\begindemo

Utilizando a definic~ao de $x^-n$, a regra do quociente e a regra da potencia,

\begineqnarray

D_x(x^-n)

&=& D_x(\frac1x^n) \nonumber\\

&=& \fracx^n(0)-1(nx^n-1)(x^n)^2 \nonumber\\

&=& \frac-nx^n-1x^2n=(-n) x^(n-1)-2n \nonumber\\

&=& (-n)x^-n-1

\endeqnarray

\enddemo

Isto e possıvel pelo fato de que, no preambulo, podemos definir que o formato dos teoremasserao

\newtheoremteorTeorema[section]

\newenvironmentdemo%

\endsloppypar\noindent\bgroup\small\bfDemonstrac~ao:

\samepage\null\hfill$\diamond$\endsloppypar\egroup

A parte \label servira para nos referirmos mais tarde ao teorema, mas veremos estaopcao mais detalhadamente a seguir, quando precisaremos de fato nos referir ao teorema2.0.1 utilizando este recurso. Voltaremos a discutir esse tipo de definicao mais tarde (3.4),quando verificarmos com mais calma o que sao “secoes”.

Page 17: Latex Intro

Capıtulo 3

Quanto ao texto...

“ Nao tenho nada a declarar,exceto por minha genialidade. . . ”

Oscar Wilde

O texto sera, como ja havia discutido, digitado normalmente, sem modificacoes ou co-dificacoes especiais a menos de alguns detalhes como alinhamento, tamanho de fonte, estilode fonte, etc. A primeira diferenca que e necessario citarmos e a quebra de linha. Quando,em Latex, queremos finalizar um paragrafo, deveremos criar duas linhas de diferenca entredois paragrafos. Espacos em branco ou tabulacoes nao sao validas em Latex: sao ignora-das por completo. Os paragrafos ja sao gerados automaticamente respeitando as normas doportugues.

3.1 Paragrafos e alinhamentos

Estamos acostumados a visualizar o espacamento entre palavras de acordo com o numerode vezes em que apertamos a tecla de espacamento. Ja no LaTeX, isso nao importa dadoque sempre sera contado apenas um independentemente da quantidade de espacos inseridos.O primeiro paragrafo sera iniciado sem indentacao, como pode ser observado logo acima. Ocomando \indent adiciona uma largura igual ao tamanho da indentacao do paragrafo normale o comando \noindentnoindent retira a indentacao do local onde ela deveria aparecer. Estescomando funciona somente para alguns estilos.

Para ser fazer o proximo paragrafo basta pular uma linha ou utilizar o comando \par nolugar em que sera iniciado o novo paragrafo. Para passar para a linha abaixo da qual se estadigitando coloque \\ 1 e a linha sera quebrada neste ponto. Ex:

observe que esta linha esta\\

quebrada apos o

uso das duas barras.

Isto ira gerar:

observe que esta linha esta

quebrada apos o uso das duas barras.

1Os comandos \\∗ e \\[medida] tem a mesma funcao do comando \\, a princıpio. A diferenca esta no fatode que \\∗ impede que o texto mude de pagina na quebra daquela linha e que \\[medida] quebra a linha,porem acrescentando o espaco que esta determinado entre colchetes seguindo certas convencoes de medidasque veremos mais adiante.

6

Page 18: Latex Intro

3.1. PARAGRAFOS E ALINHAMENTOS 7

Usando o comando \linebreak a linha e quebrada e a parte anterior ao comando ficajustificada.

Quando e usado o comando \newpage o texto passa para a proxima pagina. O comando\pagebreak[num] forca a quebra da pagina, onde o argumento opcional [num] e um valorinteiro de 1 a 4 que definem a prioridade do funcionamento do comando, onde 4 e o maiorvalor. O comando \nopagebreak[num] faz o inverso de pagebreak, ou seja, impede a paginade ser quebrada no local onde o comando foi colocado.

Existem tambem certos ambientes, onde predominara alguma caracetrıstica. Por exem-plo, podemos alinhar o texto utilizando tres ambientes simples. Todo ambiente necessitarade um ponto onde sera seu inıcio e um ponto onde ele termina. Esses dois pontos seraomarcados com os comandos \beginnome-do-ambiente e \endnome-do-ambiente. Oque estiver entre estas duas marcadas estara sob influencia do ambiente.

Para escrever um texto assim, todocentralizado, precisamos de um ambiente em que todo o texto esteja

centralizado.

Este ambiente chama-se “center”. Observe como ficou em Latex a sentenca acima.

\begincenter

Para escrever um texto assim, todo\\ centralizado,

precisamos de um ambiente onde todo o texto esteja \\ centralizado.

\endcenter

Todos os ambientes apresentarao esta mesma forma: um inıcio e um fim delimitando ocampo que estara sob influencia do ambiente. Ainda para o alinhamento de paragrafos, temosos ambientes “flushright” 2 e “flushleft”, cuja aplicacao e totalmente analoga a do ambiente“center”. Observe um exemplo final, utilizando o que foi discutido ate este momento.

[[[ ... e aqui e o fim de um paragrafo, devido a linha em branco escrita a seguir.

Aqui e o inıcio de um novo paragrafo... Esta linha termina aquibem “antes da hora”.

Aqui temos mais um paragrafo. Veja o tamanho desse espacacamento vertical a seguir,

e desse espacamento horizontal. ]]]

No arquivo fonte, o paragrafo acima e feito da seguinte maneira:

[[[ ... e aqui e o fim de um paragrafo, devido a

linha em branco escrita a seguir.

Aqui e o inıcio de um novo paragrafo...

Esta linha termina aqui \\

bem ‘‘antes da hora’’.

Aqui temos mais um paragrafo. Veja o tamanho

desse \vspace1cm espacacamento vertical a seguir,

e desse espa\c camento \hspace2cm horizontal. ]]]

2Este e o comando utilizado para criar as citacoes engracadas (...) no inıcio de cada capıtulo.

Page 19: Latex Intro

8 CAPITULO 3. QUANTO AO TEXTO...

3.2 Caracteres reservados

Ha, como em toda linguagem de programacao, caraceteres que sao destinados ao reconhe-cimento por parte do compilador dos comandos. O Latex apresenta 10 caracteres especiais.Sao ˜, ˆ, \, #, $, %, & , , e .

Existe tambem como fazermos tracos ou hıfens de diferentes tamanhos. O menor e - ee feito digitando -; o medio e – e e obtido com --. Analogamente, —, que e o maior 3, eobtido com ---.

3.3 Tıtulos, capıtulos e secoes

Para ajudar o leitor a encontrar a linha de leitura ao longo do documento, deve dividi-loem capıtulos, secoes e subsecoes. O LATEXpermite que o usuario crie esta estrutura comcomandos especiais que tomam o tıtulo como seu argumento. Os comandos de divisao dotexto que estao disponıveis para a classe article sao:

\section...

\subsection...

\subsubsection...

\paragraph...

\subparagraph...

Tabela 3.1: Possıveis divisoes para a clase “artigo”.

Para as classes book, report e letter, estas divisorias tambem valem. Quando for ne-cessario dividir o artigo em partes diferentes, utiliza-se o comando \part.... Se estivertrabalhando com as classes report ou book, um comando adicional para seccionar ao nıvelde topo, torna-se disponıvel o \chapter....

Como a classe article nao sabe nada acerca de capıtulos, torna-se muito facil adicionarartigos como capıtulos num livro. O espacamento entre secoes, a numeracao e o tamanhode letra dos tıtulos serao colocados automaticamente pelo LATEX. Dois destes comandossao ligeiramente especiais: o comando \part nao influencia a numeracao de sequencia doscapıtulos, enquanto o comando \appendix nao leva nenhum argumento. Apenas muda a nu-meracao de capıtulos para letras 4. O Latex pode criar uma tabela de conteudos com relacaoaos tıtulos de secoes e os numeros das paginas de cada secao. O comando \tableofcontents

expande-se para uma tabela de conteudos no local onde for invocado.Todos os comandos listados acima tambem existem em vers oes “estreladas”. Uma versao

“estrelada” do comando e construcao da adicionando uma estrela * apos o nome do comando.Estas versoes geram tıtulos que nao aparecerao na tabela de conteudos e que nao serao nu-merados. O comando \sectionAjuda, por exemplo, pode passar a \section*Ajuda.Normalmente, o tıtulo da seccao aparecera na tabela de conteudos exatamente como intro-duziu no texto. Algumas vezes isto nao e possıvel por o tıtulo ser demasiado grande e atabela de conteudos nao ficar legıvel. Entao, a entrada que aparecera na tabela de conteudospode ser especificada como um argumento opcional antes do verdadeiro tıtulo, como abaixo.

3Nao adianta tentar com quatro -.4Para o estilo article, muda a numerac ao de secc oes.

Page 20: Latex Intro

3.4. TEOREMAS E PROPOSICOES 9

\chapter[Tıtulo pequeno para a tabela de conteudos]Um tıtulo grande e

especialmente aborrecido, que aparece na pagina apenas.|

O comando \appendix marca o inıcio do material adicional em um livro. Depois destecomando, todos os capıtulos serao numerados com letras. Existem ainda alguns comandosque podem ser uteis. O \frontmatter deve ser o primeiro comando apos \begindocument.Ira mudar a numeracao de pagina para numerais romanos e as secoes nao serao numeradas, talcomo se usasse a versao “estrelada” nos comandos de secao (exemplo \chapter*Prefacio)mas as secoes continuarao a aparecer no ındice de conteudos. Ja o \mainmatter apareceexatamente antes do primeiro capıtulo do livro. Muda a numeracao para numerais arabes ecoloca o contador de pagina a zero.

3.4 Teoremas e proposicoes

O comando \newtheoremambientetıtulo define um ambiente para a escrita deteoremas, proposicoes, etc, no qual “ambiente” e um apelido para o ambiente e “tıtulo” eo tıtulo que sera impresso no inıcio do texto, como Teorema, Lema, Corolario, etc. Porexemplo:

\newtheoremteoTeorema[section]

\newtheoremlema[teo]Lema

\newtheoremcor[teo]Corolario

\newtheoremprop[teo]Proposic~ao

Os comandos acima definem quatro ambientes com apelidos teo, lema, cor e prop. A nu-meracao e automatica e o argumento [teo] faz com que os outros ambientes sigam a numeracaodo ambiente teo. O argumento [section] faz com que apareca o numero da secao junto aonumero do teorema.

Uma vez definidos os ambientes no corpo do arquivo fonte, eles podem ser chamados emqualquer ponto apos a definicao dos ambientes, como no exemplo seguinte:

\beginteo[Pitagoras]

\labelteo:pitagoras

Em todo triangulo retangulo o quadrado do comprimento da

hipotenusa e igual a soma dos quadrados dos comprimentos dos

catetos.

\endteo

produz o teorema 3.4.1 (lembre-se que o “label” e apenas para nos referirmos ao teorema,como veremos em 6.1)

Teorema 3.4.1 (Pitagoras) Em todo triangulo retangulo o quadrado do comprimento dahipotenusa e igual a soma dos quadrados dos comprimentos dos catetos.

3.5 Estilos, fontes e tamanhos

Ha tambem como mexermos com as fontes e tamanhos de nosso texto. A tabela abaixofaz a comparacao dos tamanhos com respeito a cada comando possıvel.

Page 21: Latex Intro

10 CAPITULO 3. QUANTO AO TEXTO...

\tinytamanho → tamanho

\scriptsizetamanho → tamanho

\footnotesizetamanho → tamanho

\smalltamanho → tamanho

\normalsizetamanho → tamanho

\largetamanho → tamanho

\Largetamanho → tamanho

\LARGEtamanho → tamanho\hugetamanho → tamanho\Hugetamanho → tamanho

Tabela 3.2: Tabela com a lista de tamanhos de fonte para o modo texto.

\textbfnegrito negrito

\textsfsans serif sans serif

\textslslanted slanted

\textscsmall caps small caps

\textttletra de maquina letra de maquina

\textrmromano romano

Tabela 3.3: Fontes utilizadas dentro do modo texto.

Com estes “operadores” listados na tabela 3.2 ja poderemos trabalhar com o tamanhode fonte de maneira simples e facil. Ha tambem a opcao de modificar o estilo da fonte, quesegue o mesmo princıpio das opcoes para tamanho de fonte.

Observe na tabela 3.3 o como cada operador modifica a fonte original. Desta forma,podemos fazer praticamente qualquer design que um editor convencional nos permitiria fazer.Com pacotes mais especıficos, que sao baixados pelo usuario (ao sentir necessidade), existiraomais tipos de opcoes, mas que nao sao tao importantes pelo fato de serem especıficas demais.

Numa maquina de escrever, uma vırgula ou um ponto ocupam o mesmo espaco de qual-quer outra letra. Ao imprimir livros, estes caracteres ocupam apenas um pequeno espacoe sao colocados muito proximos a letra precedente. Desta forma, nao se pode introduzirreticencias simplesmente introduzindo tres pontos, porque o espacamento estara comprome-tido. No entanto, existe um comando especial para estes pontos. Para criar reticencias,existe o comando \ldots. . .

3.6 Sublinhado

Sublinhar texto nao e considerado uma operacao tipografica para introduzir enfase. Masem Latex normalmente usa italico nesta operacao. Entretanto, sublinhado pode ser ne-cessario em um manuscrito a ser submetido para publicacao. O pacote ulem pode ser usado

Page 22: Latex Intro

3.7. LISTAS 11

nestes casos para producao de diversos tipos de texto sublinhado, como mostrado na tabela3.6.

\uline sublinhado

\uuline duplo-sublinhado

\uwave:::::::::::::::::::curvo-sublinhado

\sout riscado

\xout ///////////////sobrescrito

Tabela 3.4: Tipos de sublinhado e os respectivos exemplos.

3.7 Listas

As seguintes subsecoes mostram diversos exemplos de listas com os environments itemize,enumerate, description, list e trivlist. Um exemplo de formato de lista criada com o comando\newenvironment tambem e mostrado. O ambiente itemize e util para listas simples, oenumerate para listas enumeradas e o description para descricoes.

1. Pode misturar ambientes de listas conforme o seu gosto:

• Mas pode comecar a parecer muito patetico.

- Com um hıfen,

2. Portanto, lembre-se: algo. . .

Estupido nao se transformara em algo inteligente ao ser listado.

Interessante pode ser apresentado numa lista.

As listas anteriores podem ser geradas com a seguinte linha:

\beginenumerate

\item Pode misturar ambientes de listas conforme o seu gosto:

\beginitemize

\item Mas pode comecar a parecer muito patetico.

\item[-] Com um hıfen,

\enditemize

\item Portanto, lembre-se: algo\ldots

\begindescription

\item[Estupido] n~ao se transformara em algo inteligente ao ser listado.

\item[Interessante] pode ser apresentado numa lista.

\enddescription

\endenumerate

3.8 Tal qual...

O ambiente “verbatim” permite que o usuario digite o texto da forma que quiser e o textosaia no documento final (compilado) exatamente como o usuario digitou 5. Da-se inıcio ao

5Todos os comandos desta apostila estao sob influencia do ambiente “verbatim”

Page 23: Latex Intro

12 CAPITULO 3. QUANTO AO TEXTO...

ambiente “verbatim” com \beginverbatim e termina-se com \endverbatim. Observeo exemplo abaixo.

\beginverbatimobserve que esta linha esta\\

quebrada apos o

uso das duas barras.

Isto ira gerar:observe que esta linha esta

quebrada apos o uso das duas barras.Este exemplo foi utilizado na secao 3.1. Compare o resultado final com o que foi impresso

acima.Este ambiente novo fara com que um paragrafo seja criado apenas para a insercao de seu

conteudo. Caso o usuario deseje inserir no meio do texto algo sob influencia deste campo,basta utilizar o comando \verbS ... S, sendo “S” apenas uma maneira de representar umsımbolo. “S” podera ser qualquer caracter, com excecao de letras, espaco em branco easterisco. Usualmente, utiliza-se o caracter “|”.

3.9 Ambiente para citacoes e versos

Para fazer citacoes, utiliza-se um ambiente proprio chamado “quote”. Funciona comoqualquer ambiente. Veja um exemplo de sua resposta.

“As pessoas que vencem neste mundo sao as que procuram as circunstancias deque precisam e, quando nao as encontram, as criam.”Bernard Shaw

3.10 Espacos em branco

Diversos espacos em branco sao considerados, pelo compilador, um unico espaco e todoe qualquer espaco a mais sera simplesmente ignorado. Mas existe uma forma de inserirmosa quantidade que quisermos de espacos em branco entre duas palavras, utilizando o caracter\. Por exemplo,

AQUI \ FICA \ \ MUITO \ \ \ LONGE \ \ \ \ DA \ \ \ \ \ \ \ \ \ \ OUTRA PALAVRA!

geraAQUI FICA MUITO LONGE DA OUTRA PALAVRA!

Nao confunda com o sinal \\, discutido na secao 3.1. Para obter os espacos em brancosao necessarias \ com espacos em brancos entre elas.

3.11 Brincando com cores no texto

O texto pode tambem apresentar cores diferentes, havendo ja algumas cores pre-definidas(sempre as cores serao reconhecidas com seu nome em ingles). Para mudar a cor do texto,utilize o comando

\textcolorCORtexto .

Page 24: Latex Intro

3.11. BRINCANDO COM CORES NO TEXTO 13

Por exemplo, o codigo \textcolorreddiferentes gerou diferentes anteriormente. Hatambem como definirmos cores para utilizarmos em um documento utilizando o seguintecomando, no preambulo:

\definecolorNOMErgb%RED,%GREEN,%BLUE .

Observe que para definir uma cor precisaremos definir seu nome e a concentracao das trescores basicas, variando de 0 a 1. Tambem podemos utilizar caixas, como text . Para poderutilizar tal opcao, utilize o comando

\colorboxCORTEXTO .

Tambem utilizando o comando \fcolorboxframecolorboxcolortext pode-se criaralgo semelhante a um texto dentro de uma caixa, mas com um quadro colorido, tal comoneste exemplo . Tambem e possıvel mudar a cor da pagina, como, se o leitor prestar atencao

(melhor visualizavel em formas nao impressas deste documento), na capa deste trabalho. Istoe obtido com o comando

\pagecolorCOR .

Page 25: Latex Intro

Capıtulo 4

Ambiente Matematico

“God is REAL,unless declared integer. . . ”

Alguem. . .

Ja vimos no capıtulo 3 que existem diversos ambientes em LATEX, que serao regioesonde uma determinada caracterıstica sera predominante. Existem ambientes especıficospara insercao de formulas matematicas. Um deles, o mais utilizado e comum, e o “equa-tion”. Verems tambem o “eqnarray”, que e bem util para sistemas de equacoes e/oupara ilustrar passagens de contas. Caso seja necessario o uso de uma formula ou algumsımbolo matematico dentro do modo texto existe ainda uma possibilidade: utilizar o carac-ter $ EQUAC~AO E/OU SIMBOLOS $, que cria um tipo de mini ambiente matematico.

4.1 Ambiente “equation”

O ambiente equation ocorre como qualquer outro ambiente, ou seja,

\beginequation

\labeleq:NOME-DA-REFERENCIA

EQUAC~OES ...

\endequation

O proprio ambiente “equation” trata de gerar a numeracao para as formulas e o nome “label”cuida do nome pelo qual a equacao sera reconhecida, caso precisemos chama-la novamentedepois (como ja discutimos). Mais detalhes serao abordados na secao 6.1. Caso nao hajanecessidade de que a equacao ocupe um posto na numeracao, basta adicionar o comando\nonumber e o numero referente a equacao desaparecera. Isto tambem valera no ambiente“eqnarray”.

4.2 Ambiente “eqnarray”

Este ambiente permite que uma passagem longa de contas ou um sistema seja exibidosem que diversos ambientes “equation” sejam necessarios. A forma geral deste ambiente e aseguinte.

\begineqnarray

f(x) = & 2 cos (x) & + exp (x) \nonumber \\

\labeleq:teste1 f(x) &=& 2 cos (x) + exp (x)

\endeqnarray

14

Page 26: Latex Intro

4.3. LETRAS GREGAS 15

Esta linha de comando gerara a seguinte visualizacao, ao ser compilada.

f(x) = 2cos(x) +exp(x)

f(x) = 2cos(x) + exp(x) (4.1)

Observe que os elemento & denotam exatamente a regiao que sera utilizada para alinhasas equacoes. Muitas vezes, estes sımbolos sao deixados entre o sinal “=”. Observe que aequacao (4.1) pode receber referencias, enquanto que a equacao logo acima nao apresentauma ordem dentro das referencias.

4.2.1 Montando sistemas

Como fazer entao para se referir a duas equacoes como, por exemplo, esta demonstradoabaixo:

a2 = b2 + c2 (4.2a)

a = b− 5 (4.2b)

Observe que agora podemos chamar uma equacao de (a) e outra de (b), sendo que estesındices serao gerados internamente pelo LATEX. Primeiramente, e necessario notar que houveum pacote adicional utilizado:

\usepackagesubeqnarray

Observe a sintaxe utilizada:

\beginsubeqnarray\labeleq:sub

\slabelsub1 a^2& =& b^2 + c^2\\

\slabelsub2 a &=& b - 5

\endsubeqnarray

Para nos referirmos, utilizaremos a chamada “sub1” para a primeira equacao, isto e, aequacao (4.2a) e a chamada “sub” para a equacao (4.2). Mais tarde, abordaremos com maisdetalhes como fazer essas referencias.

4.3 Letras gregas

As letras gregas podem ser obtidas de forma muito simples: basta adicionarmos \ antesdo nome da letra grega, como podemos observar na tabela 4.1.

Como pode-se notar sem grandes dificuldades, quando a letra inicial for maiuscula, entaoa letra grega sera maiuscula. Existe ainda letras que aceitam uma variacao da forma comum,como por exemplo σ e ς. Basta adicionar “var” ao nome, como em \varepsilon, quetorna-se ε. E importante lembrar que as letras gregas devem ser inseridas apenas no modomatematico, gerando um erro caso o oposto seja realizado. Se o usuario estiver utilizandoo MikTex, a letra grega estara presente no local certo no documento final, porem umamensagem de erro sera exibida no momento da compilacao. No apendice A ha uma listacompleta com todas as letras gregas possıveis, incluindo suas variacoes.

Page 27: Latex Intro

16 CAPITULO 4. AMBIENTE MATEMATICO

\alpha α \epsilon ε

\beta β \Pi Π

\gamma γ \Sigma Σ

\Gamma Γ \eta η

\nabla ∇ \lambda λ

\delta δ \Lambda Λ

Tabela 4.1: Alguns exemplos de letras gregas em LATEX.

4.4 Parenteses e similares

Os comandos

\left( e \right)

produzem parenteses com tamanho ajustado na altura para conter a formula que e englobadapor eles. O mesmo acontece com colchetes e chaves, usando os comandos \left[, \right],\left\ e \right\. Os comandos \left e \right devem aparecer sempre aos pares.Observe a diferenca em um caso mais explıcito.

cos( 2πω a

bcω

F~ς

t) (4.3)

cos

(2π

ω ab

F~ς

t

)(4.4)

Enquanto na equacao (4.3) os parenteses apresentam seu tamanho usual (igual ao modotexto), deixando que a razao torne-se maior que os parenteses, na equacao (4.4) os parentesesajustaram-se de acordo com o argumento do cosseno.

4.5 Sımbolos matematicos e estilos de fontes

Ha tambem sımbolos espeiciais. Por exemplo, quando queremos dizer que para qualquervalor de x a funcao f(x) estara definida poderemos utilizar o sinal ∀. Existe uma extensalista de sinais matematicos, dos quais vou listar alguns dos mais importantes no apendice B.

Existem algumas fontes bem especıficas e especiais, que so podem ser utilizadas dentrode um ambiente matematico, listadas na tabela 4.2.

4.6 Funcoes

Apesar de que nas secoes 4.1 e 4.2 nao terem sido utilizados comandos especiais paraexprimir funcoes matematicas, na verdade existem ja formas pre-definidas em LATEXpara asfuncoes mais comuns. Infelizmente sao formas complicadas e grandes, que necessitarao deum certo esforco para fazer com que o usuario acostume-se a utiliza-las sem problemas edecora-las. Por exemplo, vamos tentar escrever uma somatoria de cossenos e senos.

F =∑

i

exp(t ln(t)) coth(ωit) sin(ωit+ inf(∆)) (4.5)

Page 28: Latex Intro

4.7. MATRIZES 17

\mathrm... TipoRomano

\mathbf... TipoNegrito

\mathsf... TipoSansSerif

\mathtt... Tipodactilografo

\mathit... TipoItalico

\mathcal... T 〉√ocal〉∇a〉co

\mathnormal... TipoNormal

Tabela 4.2: Tabela de fontes para ambientes matematicos.

A (4.5) ilustra bem o uso de diversas funcoes comuns dentro do ambiente “equation”. Otexto LATEXpara gerar tal equacao e, na verdade, o texto abaixo.

\beginequation

\labeleq:exempfunc

\mathcalF = \sum\limits_i \exp(t \ln(t)) \coth(\omega^i t) \sin (\omega_i t + \inf(\Delta))

\endequation

Como vemos, entao, o seno fica \sin; a exponencial, \exp; o logarıtmo, \ln. Na realidade,todas as funcoes so terao uma unica diferenca: o acrescimo da \ antes de seu nome. Muitaspessoas preferem definir no preambulo um comando novo \e e fazer a exponencial comoef(x).

A funcao raiz e produzida com o comando

\sqrt[n]radicando .

Por exemplo, $\sqrt[3]8=2$ produz 3√

8 = 2. Se o argumento opcional [n] for omitido,entao a raiz quadrada e gerada. Por exemplo, $\sqrt4=2$ produz

√4 = 2. O tamanho e

o comprimento do radical sao automaticamente ajustados ao tamanho do radicando.

4.7 Matrizes

As matrizes sao produzidas com o uso do ambiente array. Os elementos de uma mesmalinha sao separados pelo caracter & e as linhas sao separadas por \\. E necessario passar parao LATEXcomo as colunas devem ser alinhadas. Isto e feito em seguida ao comando que iniciao ambiente. Por exemplo, \beginarrayccrll diz ao LATEXque a matriz tem 5 colunase que as duas primeiras devem ser alinhadas ao centro, que a do meio deve ser alinhada adireita e que as duas ultimas devem ser alinhadas a esquerda. Por exemplo, as matrizes

A =

1 3 0

2 4 −2

, B =[

1 3 −2], e C =

1

4

−3

foram conseguidas com

Page 29: Latex Intro

18 CAPITULO 4. AMBIENTE MATEMATICO

A=\left[\beginarrayrrr

1 & 3 & 0 \\

2 & 4 & -2

\endarray\right],\quad

B=\left[\beginarrayccc

1&3&-2

\endarray\right],

\quad \mboxe\quad

C=\left[\beginarrayr

1\\4\\-3

\endarray\right]

Um outro exemplo do uso do ambiente array e

|x| =

−x se x ≤ 0

x se x > 0

$

|x|=\left\\beginarrayrc

-x&\mboxse\quad x\le 0\\

x &\mboxse\quad x>0

\endarray\right.

$

Observe o uso do comando \right para fechar o comando \left. Na verdade, a diferencade quando queremos escrever a primeira montagem para a segunda montagem e o fato de queo comando \right vem sozinho, sem nenhum sımbolo para fechar o sımbolo que acompanhouo \left.

4.8 Lapidando o ambiente matematico

Existem ainda alguns comandos que precisam ser conhecidos para poder escrever qualquerformula. Na secao 4.6, a exponencial (utilizando o um comando novo definido no preambulo)sera gerada a partir de um comando de sobrescrito, que, no caso, ficaria \e^f(x). Comoem diversas linguagens de programacao, o sobrescrito e obtido utilizando o sımbolo ^. Sequisermos escrever o numero 2 elevado ao quadrado deveremos, portanto, escrever 2^2. Aschaves delimitarao principalmente no caso em que houver muitos caracteres como expoentes:

24Ωtj

.O subscrito e obtido utilizando o sımbolo _. Por exemplo, ui

j1 e obtido com u^i_j,

sendo que a falta das chaves implica que apenas o caracter seguinte esta sendo operado pelosımbolo de sobrescrito e subscrito.

No caso de escrevermos uma integral definida, existe um comando para definirmos oslimites: \limits _LIMITE INFERIOR^LIMITE SUPERIOR. O resultado disso e

x=b∫x=a

V(x)dx, (4.6)

1Este e o sımbolo usualmente dado a uma grandeza que pode ser decrita como uκτ = u(κ∆x, τ∆t).

Page 30: Latex Intro

4.9. FANTASMA . . . 19

que e a aplicacao direta do sımbolo de integral visto em 4.3 com os limites subscritos esobrescritos vistos agora. Assim se fara com somatorios e produtorios. Ja para limites,basta fazer \lim_z \to a f(z) para gerar

limz→a

f(z). (4.7)

Quando quisermos fazer a razao entre duas grandezas, tambem ja existe uma implementacaopara este padrao: \fracUPDOWN gera UP

DOWN. Os comandos

\overlineformula e \underlineformula

servem para colocar barras em cima e em baixo de uma letra ou uma formula. Por exemplo,

a2 + bc

foi conseguido com

\overlinea^2+\underlinebc .

Pode-se colocar tambem chaves em cima e em baixo de formulas com os comandos

\overlineformula e \underlineformula

Por exemplo,n︷ ︸︸ ︷

x1 + x2 + . . .+ xn−1︸ ︷︷ ︸n−2

+xn

foi obtida com

\overbracex_1+\underbracex_2+\ldots+x_n-1_n-2+x_n^n .

Setas em cima de letras sao conseguidas com o comando \vecletra, como em ~r, que foiobtido com $\vecr$. “Chapeu” e “til” em cima de letras sao conseguidas com os comandos

\hat, \widehat, \tilde e \widetilde. Por exemplo, A e ABC foram conseguidos com$\hatA$ e $\widehatABC.

4.9 Fantasma . . .

Nao conseguimos ver fantasmas, mas eles continuam a ocupar algum espaco nas mentesde um grande numero de pessoas. O LATEXnao e diferente. Podemos usar isto para algunstruques interessantes de espacaamento.

Quando se alinha texto verticalmente usando e , o LATEXe, por vezes, suficiente. Usandoo comando \phantom pode reservar espaco para caracteres que nao aparecem no resultadofinal. A forma mais facil de compreender e reparar nos sequintes exemplos:

126C em oposicao a 12

6 C

Ao usar o phantom, utilizei a seguinte sintaxe:

^12_\phantom16\textrmC

Page 31: Latex Intro

Capıtulo 5

Produzindo graficos matematicos

A maior parte das pessoas usam o LATEXpara datilografar os seus textos. Alem de permitire incentivar a estruturacao dos textos, o LATEXtambem oferece possibilidades ligeiramenterestritas para producao de resultados graficos usando descricoes textuais. Recentemente,um grande numero de extencoes LATEXtem sido criadas para ultrapassar estes problemas. Oambiente picture permite a programacao de imagens diretamente em LATEX. Por um lado,existem um conjunto de restricoes severas, como os tipos de segmentos ou raios de cırculos queestao restritos a um pequeno conjunto de valores. Por outro, o ambiente picture do LATEX2econtem o comando \qbezier, onde o “q” originou-se de “quadratica”. A maior parte dascurvas usadas como cırculos, elipses e outras podem ser aproximadas de forma satisfatoriausando curvas de Bezier C quadraticas, mesmo que obriguem a alguns calculos matematicos.Por outro lado, se uma linguagem de programacao como o “Java” for usada para gerar blocos\qbezier para documentos LATEX, o ambiente picture torna-se bastante poderoso. Apesar daprogramacao de imagens diretamente em LATEXser bastante restrita, e normalmente bastantecansativa, existem boas razoes para o fazer. Os documentos produzidos desta forma sao“pequenos” em relacao ao tamanho ocupado, e nao sao necessarios ficheiros extra. Pacotescomo o “epic” e “eepic” (descritos, por exemplo, no The LATEX Companion), ou pstricksajudam a eliminar estas restricoes substituindo o ambiente original picture, e melhorandosignificativamente o poder grafico do LATEX.

5.1 Um ambiente especıfico

Acredite ou nao, o ambiente picture funciona diretamente, em LATEX2e standard, sem sernecessario carregar qualquer pacote. Como todo ambiente sua sintaxe resume-se as seguinteslinhas.

\beginpicture(x; y)(x0; y0)...

\endpicture

Os numeros x, y, x0, y0 referem-se ao \unitlength (comprimento da unidade de dese-nho), que pode ser mudada em qualquer altura, tanto fora dos ambientes picture com umcomando semelhante a

\setlength\unitlength1.2cm .

20

Page 32: Latex Intro

5.2. SEGMENTOS DE RETA 21

O valor, por omissao, de \unitlength e 1pt. O primeiro par, (x, y), obriga a quese reserve, dentro do documento, do espaco rectangular para a imagem. O segundo par(opcional), (x0, y0), atribui coordenadas arbitrarias ao canto inferior esquerdo do retanguloreservado.

Praticamente todos os comandos para se desenhar neste ambiente tem uma das duasseguintes formas:

\put(x,y)-objeto- ou \multiput(x,y)(∆ x, ∆ y)—n-objeto-.

As curvas de Bezier podem ser obtidas utilizando, porem, o comando

\qbezier(x1, y1)(x2, y2)(x3, y3) .

5.2 Segmentos de reta

Os segmentos de retas sao desenhados com o comando

\put(x, y)\line(x1, y1)comprimento

Para podermos formalizar um segmento de reta, precisamos fornecer as equacoes umponto inicial, um final e pronto. Mas isto e o mesmo que fornecer um ponto inicial, ocomprimento do segmento e o vetor diretor. O comando \line necessita, como argumentos,do vetor diretor, com respeito ao “zero”, e do comprimento do segmento. O ponto inicial edado como argumento ao comando \put. Observe os exemplos.

!!!!!!!!!!

!!!!!

"""""""""""""""

###############

%%%%%%%%%%%%%%%

(((((((

((((((((

,,,,,,,,,,,,,,,

Este grafico foi obtido com uma serie de comandos de criacao de segmentos de retas.

\begincenter \setlength\unitlength5cm

\beginpicture(1,1)

\put(0,0)\line(0,1)1

\put(0,0)\line(1,0)1...

\put(0,0)\line(6,5)1

\endpicture

\endcenter

Page 33: Latex Intro

22 CAPITULO 5. PRODUZINDO GRAFICOS MATEMATICOS

(a) Molecula de CH4 (b) Exemplo do programa.

Figura 5.1: Figura ilustrativa das vantagens introduzidas pelo editor de imagens LatexDraw.Nesta figura, esta esquematizada a molecula de CH4 e dois eixos de simetria, C3 e S4. Logoao lado da molecula, vemos um exemplo do programa em acao.

Os componentes do vetor de direcao sao restritos aos inteiros (-6, -5, . . . 5, 6) e temde ser primos entre si (nenhum divisor comum exceto o 1). A figura ilustra todas as 25possibilidades de inclinacao no primeiro quadrante. O comprimento e relativo a unidade\unitlength. Este argumento e a coordenada vertical no caso de um segmento de retavertical, e a coordenada horizontal em todos os outros casos.

5.3 O LatexDraw

Mas existem algumas figuras cujo desenho sera extremamente complexo para fazermoscom o que foi passado ate agora. Imagine como poderia ser feita a figura 5.1(a). Ao menos,tempo levaria. No entanto, interromperei aqui esta parte sobre a montagens de figuras emlatex para sugerir a utilizacao de um programa criado em Java (nao necessita de instalacao)chamado LatexDraw. Este prorgama pode ser adquirido pelo site oficial 1 e o jre 1.5 seranecessario para a utilizacao do programa.

Ao iniciar o LatexDraw, voce observara uma interface interessante, parecida com o mspaint do Windows. Logo ao lado, simultaneamente a criacao da imagem, o programa geraos codigos fonte da imagem. O programa, em geral, e bem simples de ser usado e dispensaquaisquer maiores descricoes.

Apos criar a imagem, basta clicar no botao para copiar o codigo e colar no arquivoLATEX. Algo interessate e a opcao Drawing properties, na opcao Draw do menu. Nela,pode-se configuras opcoes como o posicionamento da figura, legenda e nome da referencia.

Uma das grandes vantagens e o tabalho com curvas de Bezier, pois com o LatexDrawpodemos esoclher as posicoes de cada um dos pontos e as derivadas destes mesmos pontos.Assim, gerar graficos qualitativos de curvas como uma parabola torna-se uma tarefa quaseque trivial. Sugere-se ao leitor, neste ponto, que leia o apendice C.

1Projeto LatexDraw ou pelo link para minha home page.

Page 34: Latex Intro

Capıtulo 6

Detalhes, Indices e Figuras

“O segredo de aborrecere dizer tudo.”

Voltaire

Existem ainda alguns detalhes interessantes a tratar, como referencias cruzadas e figu-ras. Os documento em LATEXoferecem como grande vantagem a simplicidade em trabalharcom estes objetos, pelo fato de que sua formatacao e automatica e padronizada em todo odocumento. Tambem e uma vantagem o fato de que, em figuras, comentarios e referenciassao possıveis utilizando um simples comando.

6.1 Referencias Cruzadas

Referencias cruzadas sao as referencias feitas a secoes, capıtulos, equacoes, teoremas,etc. Para utilizar esta ferramenta, precisamos apenas nomear um objeto (equacao, capıtulo,etc) e depois criar uma “chamada” para este nome. Para isto, utilizamos dois comandos:\labelNOME-DO-REFERENCIADO e \refNOME-DO-REFERENCIADO. O \label nomeia oobjeto com o argumento e o \ref cria a referencia. Por exemplo, vamos chamar a equacao∫

dω =

∫ ∫dω2 (6.1)

de “forma”. Para se referir a (6.1), bastou utilizarmos o \eqrefeq:forma (o \eqref eum variante do \ref que e destinado em especıfico para equacoes). A equacao, no ambiente“equation” foi criada da forma abaixo.

\beginequation

\labeleq:forma

\int d \omega = \int \int d \omega^2

\endequation

Costuma-se utilizar prefixos nos nomes dos objetos: “eq” para equacoes, “sec” para secoese “fig” para figuras. Isso nao e necessario, mas ajuda na organizacao. Quando um “pdf” ou“ps” e gerado a partir de um arquivo LATEX, as referencias cruzadas sao todas geradas emforma de links, os quais remetem ao ponto do documento em que esta o objeto referenciado.Atualmente, documentos gerados em “dvi” tambem apresentam esta caracterıstica.

23

Page 35: Latex Intro

24 CAPITULO 6. DETALHES, INDICES E FIGURAS

6.2 Posicionamento

Utilizaremos nas secoes 6.4 e 6.6 este conceito. Quando temos, em geral, um ambienteque necessita da especificacao do local onde ele devera ser impresso no documento final,poderemos definir o posicionamento dele. Utiliza-se os caracteres que discutiremos a seguirentre barras [ .. ], logo depois do \beginambiente.

Espec. Permiss ao para colocar em. . .

h “here”, aqui neste exato 1 localonde ocorreu no meio do texto. Eutil para pequenos objetos.

t No topo da pagina

b No fundo (bottom) da pagina

p Numa pagina especial apenascom corpos flutuantes..

! Sem considerar a maior parte dosparametros internos que podemfazer com que o corpo flutuantenao seja colocado.

Tabela 6.1: Tabela com as opcoes de posicionamento.

A especificacao de colocacao “!hbp” indica ao LATEXpara colocar a tabela exatamenteonde o comando \table esta (h) ou no fundo (b) de alguma pagina ou em alguma paginaespecial para corpos flutuantes (p), e tudo isto mesmo que nao fique muito bonito (!). Senenhuma especificacao for dada, e assumida a “[tbp]”. O LATEX ira colocar cada corpoflutuante de acordo com a especicacao de colocacao dada pelo autor. Se um destes objetosnao puder ser inserido na pagina atual, sera enviado para a fila 2 de espera correspondente(para figuras ou tabelas, independentemente funcionando). Quando uma nova pagina einiciada, o LATEXverifica primeiro se e possıvel preencher uma pagina especial de flutuacoescom os objetos da lista de espera. Se isto nao for possıvel, o primeiro objecto de cadauma das filas de espera e tratado como se tivesse ocorrido naquele momento no texto: oLATEXtenta de novo colocar de acordo com a respectiva especificacao de colocacao (exceto o“h”, que nao e mais valido). Qualquer objeto que ocorra no texto sera enviado para a fila deespera. O LATEXmantem estritamente a ordem original em que aparecem cada um dos tiposde objetos flutuantes. Esta e a razao pela qual uma figura que nao pode ser inserida em seulocal original “empurra” todas as outras figuras para o fim do documento.

6.3 Comentarios

Os comentarios em LATEXsao escritos EM LINHA e marcados pelo caracter %. Por exem-plo, o comentario abaixo nao apareceria (se nao estivesse sob influencia do “verbatim”, secao3.8) no documento final.

% ESTE COMENTARIO N~AO DEVERIA APARECER NO

% DOCUMENTO COMPILADOR A PARTIR DO ARQUIVO FONTE.

2Estas filas sao “FIFO” — “first in first out”, o primeiro a entrar e o primeiro a sair

Page 36: Latex Intro

6.4. INSERINDO FIGURAS 25

6.4 Inserindo figuras

Atualmente, quando um documento dvi ou ps e gerado, as figuras sao transcritas parapdf pelo proprio compilador 3. Atribui-se esta convercao ao fato de que agora dvi e ps temas referencias (ver 6.1) funcionando como links, assim como funcionava com os documentosgerados em pdf. De toda forma, o pacote que possibilita a insercao de figuras e o “graphicx”,ou seja, no preambulo deve constar uma linha com “\usepackagegraphicx” em formatoeps (Encapsulated PostScript), sendo o comando que insere o seguinte:

\includegraphics[opc~oes]nome-do-arquivo .

As possıveis opcoes que podem ser escolhidas estao relacionadas na tabela 6.2.

height Altura (exemplo: “height = 20cm”).

width Largura.

scale Reescala a figura com respeito as suas dimensoes originais.

angle Angulo de rotacao da figura (em graus).

Tabela 6.2: Tabela com as opcoes a serem utilizadas no comando “includegraphics”.

Outra maneira de utilizar este comando seria inseri-lo no ambiente “figure” , que tem aseguinte forma.

\beginfigure[posicionamento]

= (comandos relacionados com a figura) =

\captionLegenda da figura

\labelfig:NOME

\endfigure

A vantagem de utilizar a forma relacionada acima e o fato de que poderemos utilizarum ambiente proprio para figura (organizacao) e utilizar as referencias e legendas. Veremosalgo analogo quando estudarmos tabeleas (6.6). Uma vantagem extremamente grande e quea figura pode agora estar com a opcao “flutuante” (o LATEXcalcula a melhor posicao, ver6.2). Pode-se tambem utilizar mais de um \includegraphics dentro de um esmo ambiente“figure”.

6.5 Conjunto de figuras

Existe um pacote, como o discutido na secao 4.2.1, que permite a insercao de conjuntode figuras e sua visualizacao e indexissacao seguir os moldes da montagem de sistemas. Estepacote e o

3Para inserir figuras em formatos como “pdf” ou “jpg” deve-se em primeiro lugar inserir comando dvipdfmcomo argumento opcional da classe do documento: “\documentclass[dvipdfm]...”. Para inserir a figura enecessario transforma-la do formato original (.jpg, .png, .pdf) para o formato .bb (bounding box). Comofazer? Suponha que o nome da arquivo seja grafico.jpg. Para transforma-lo em grafico.bb basta abrir oCommand Prompt e digitar: “ebb grafico.jpg”. Isto transforma o arquivo de .jpg em .bb. Obs: A figuranao aparecera no documento .dvi. E preciso que se transforme-o em .pdf. Para fazer isso, abra o CommandPrompt e digite: ”dvipdfm documento.dvi”, supondo que o nome do arquivo seja documento.

Page 37: Latex Intro

26 CAPITULO 6. DETALHES, INDICES E FIGURAS

\usepackagesubfigure

Observe o exemplo abaixo.

\beginfigure[t!]

\centering

\subfigure[Molecula de CH4\labelfig:metano]

\includegraphics[scale = .4]ch4.pdf

\subfigure[Exemplo do programa.\labelfig:prog]

\includegraphics[scale = .4]exemplo.jpg

\captionFigura ilustrativa das vantagens introduzidas pelo

editor de imagens \emphLatexDraw. Nesta figura, esta esquematizada

a molecula de $CH4$ e dois eixos de simetria, $C_3$ e $S_4$. Logo ao

lado da molecula, vemos um exemplo do programa em ac~ao.

\labelfig:figura1

\endfigure

O exemplo logo acima foi utilizado na secao 5.3.

6.6 Tratando tabelas

Ha a possibilidade tambem de se criar tabelas em LATEXde forma bem simples. Destavez, deveremos demarcar o inıcio da tabela com \begintabularopc~oes. As opcoes naverdade se referem ao numero de colunas que a tabela vai ter e qual o alinhamento de cadacoluna. Por exemplo, se quisermos tres colunas, sendo uma alinha a esquerda, uma a direitae outra centralizada, o comando ficara \begintabularlrc (l de “left”, r de “right” e cde “center). Vejemos um exemplo simples:

\begintabularrcl

RIGHT & CENTER & LEFT \\

PRIMEIRA COLUNA & SEGUNDA COLUNA & TERCEIRA COLUNA \\

\endtabular

RIGHT CENTER LEFT

PRIMEIRA COLUNA SEGUNDA COLUNA TERCEIRA COLUNA

Os caracteres & servem para separar as colunas. Mas observe que a tabela nao apre-senta divisorias entre as celulas, como mostra a 6.2. Para isso, usaremos outras opcoes. Oargumento do tabular que enumera os alinhamentos das colunas (e especifica o numero decolunas) tambem determinara como serao as divisoes verticais: onde houver o caracter |,havera tambem uma divisoria. Observe:

\begintabular|rc|l|

RIGHT & CENTER & LEFT \\

PRIMEIRA COLUNA & SEGUNDA COLUNA & TERCEIRA COLUNA \\

\endtabular

RIGHT CENTER LEFT

PRIMEIRA COLUNA SEGUNDA COLUNA TERCEIRA COLUNA

Page 38: Latex Intro

6.6. TRATANDO TABELAS 27

Ja as divisorias horizontais sao obtidas com o comando \hline, que deve ser adicionadona linha sobre o qual a divisoria devera ser visualizada. Por exemplo, observe este ultimoexemplo:

\begintabular|rcl|\hline

RIGHT & CENTER & LEFT \\

PRIMEIRA COLUNA & SEGUNDA COLUNA & TERCEIRA COLUNA \\\hline

\endtabular

RIGHT CENTER LEFT

PRIMEIRA COLUNA SEGUNDA COLUNA TERCEIRA COLUNA

Existe ainda um ambiente especializado para criar tabelas com mais opcoes e de maneirabem mais organizada (assim como na secao 6.4). Este ambiente chama-se “table”. Vejemosum exemplo, baseado na 4.1.

\begincenter

\begintable[htb]

\begincenter

\begintabular|l|l|l|l|\hline

\verb|\alpha| & $\alpha$ & \verb|\epsilon| & $\epsilon$ \\

\verb|\beta| & $\beta$ & \verb|\Pi| & $\Pi$ \\

\verb|\gamma| & $\gamma$ & \verb|\Sigma| & $\Sigma$ \\

\verb|\Gamma| & $\Gamma$ & \verb|\eta| & $\eta$ \\

\verb|\nabla| & $\nabla$ & \verb|\lambda| & $\lambda$ \\

\verb|\delta| & $\delta$ & \verb|\Lambda| & $\Lambda$ \\ \hline

\endtabular

\endcenter

\captionAlguns exemplos de letras gregas em \LaTeX.

\labeltab:ltrggs1

\endtable

\endcenter

\alpha α \epsilon ε

\beta β \Pi Π

\gamma γ \Sigma Σ

\Gamma Γ \eta η

\nabla ∇ \lambda λ

\delta δ \Lambda Λ

Tabela 6.3: Alguns exemplos de letras gregas em LATEX.

Observe que assim, o unico grande trabalho que o usuario tera sera de organizar bemos itens para que as celulas sejam bem respeitadas e nenhuma montagem incoveniente sejacompilado. Como podemos ver, agora podemos nos referir a tabela 6.3 com o comando usual,ou seja, \reftab:ltrggs1. Lembre-se sempre que o \caption devera aparecer antes do\label; tambem e bom tomar cuidado para, caso usar o “center”, enter nao deixar que o\label esteja subordinado ao ambiente “center” quando ocorrer.

Page 39: Latex Intro

28 CAPITULO 6. DETALHES, INDICES E FIGURAS

6.7 Listas de figuras e tabelas

Tambem pode-se criar uma lista, como a pagina de conteudos, contendo as tabelas e figu-ras que serao apresentadas durante o texto. Analogamente ao comando \tableofcontents,utiliza-se os comandos

\listoffigures ,

para exibir uma pagina com a lista de todas as figuras, e

\listoftable ,

para exibir uma pagina com todas as tabelas do texto.

6.8 Resumo

Em publicacoes cientıficas e habitual iniciar com um resumo que da ao leitor uma visaorapida do que o espera. O LATEXdispoe do ambiente “abstract” para esta finalidade. Normal-mente este ambiente e usado em documentos escritos com a classe “article” de documentos.Sua sintaxe e a mesma de qualquer outro ambiente.

\beginabstract

RESUMO . . .

\endabstract

6.9 Ligacoes Hipertexto

O pacote hyperref padronizara todas as referencias internas do seu documento comohiperligacoes. Para que isto funcione devidamente, e necessaria a utilizacao do pacote “hy-perref”, ou seja,

\usepackage[pdftex]hyperref

como ultimo comando do preambulo do seu documento (caso o objetivo final seja ageracao de um documento pdf 4 ). Muitas opcoes estao disponıveis para configurar o com-portamento do pacote “hyperref”:

• como uma lista separada por vırgulas depois da opcao pdftex,\usepackage[pdftex]hyperref.

• ou em linhas individuais com o comando\hypersetupopc~oes

Na lista seguinte, os valores por omissao estao escritos num tipo de letra vertical ou “naoitalico”.

4E de notar que o pacote hyperref nao esta limitado ao uso com o pdfTEX. Tambem pode ser configuradopara embeber informacao especıfica do PDF no ficheiro DVI, resultado normal do LATEX, que depois iracolocar no ficheiro PS com o dvips e que, finalmente, sera usado pelo Adobe Distiller quando se tentarconverter de PS para PDF.

Page 40: Latex Intro

6.10. REFERENCIAS BIBLIOGRAFICAS 29

• bookmarks (=true,false) mostra (true) ou esconde (false) a barra de bookmarks aovisualizar 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 nao, automaticamente o tamanho inicial do textoquando visualizado;

• pdftitle (=texto) define o tıtulo que sera mostrado na janela Document Info doAcrobat;

• pdfauthor (=texto) o nome do autor do PDF;

• pdfnewwindow (=true,false) define se uma nova janela deve ser aberta quando umaligacao envia para fora do documento atual;

• colorlinks (=false,true) delimita as ligacoes por uma caixa de cor (false) ou pinta otexto das ligacoes (true). As cores destas ligacoes podem ser escolhidas com a seguintesintaxe:linkcolor (=red) cor de ligac oes internas (secc oes, paginas, etc),citecolor (=green) cor de citac oes (bibliografia),filecolor (=magenta) cor de ligac oes para ficheiros,urlcolor (=cyan) cor de ligac oes de URL (mail, web).

Por exemplo, caso deseja modificar todas as cores das ligacoes, pode utilizar a seguintesintaxe (que e a adotada nesta apostila):

\usepackagehyperref...

\hypersetupcolorlinks,%

citecolor=green,%

linkcolor=blue,%

urlcolor=cyan,%

pdftex

6.10 Referencias bibliograficas

As referencias bibliograficas iniciam com \beginthebibliographylargura e termi-nam com um \endthebibliography. Em alguns casos, o parametro largura pode serpensado como a quantidade maxima de itens que podem ser utilizados na bibliografia. Cadaitem da bibliografia deve iniciar com um comando \bibitemmarca. A marca nao e im-pressa no texto final e serve apenas para referencias dentro do proprio documento atravesdo comando \citemarca. Observe o trecho a seguir:

Page 41: Latex Intro

30 CAPITULO 6. DETALHES, INDICES E FIGURAS

...

Para maiores informa\c c\~oes veja as refer\^encias \citesilva

e \citealmeida.

...

\beginthebibliography99

\bibitemalmeida Almeida, H. P., \it Introdu\c c\~ao \‘a Teoria

dos C\’odigos, Editora da UFPB, 1999.

\bibitemsilva Silva, A. A., \it Matem\’atica Elementar,

notas de aula, 1997.

\endthebibliography

O trecho acima gerara no fim do arquivo um conjunto de referencias bibliograficas e no meiodo texto havera links para as reverencias, analogamente aos links das referencias cruzadas.

Porem, ha ainda um jeito bem mais pratico de brincar com referencias bibliograficas.Observve que em cada arquivo fonte o usuario devera incluir uma secao com as referenciasque o artigo utilizara. Isto nao e necessario, pois se o usuario adicionar os comandos\bibliographystyleunsrt e \bibliographyarticles,books no fim do arquivo fonte,o compilador gerara as referencias bibliograficas a partir de dois arquivos 5 (chamados “ar-ticles.bbl” e “books.bbl”). Durante o texto, basta citar um item existente nestes arquivosutilizando sua “marca” e o compilador gerara um arquivo externo, com o mesmo nome doseu arquivo fonte, mas com extensao ligeiramente diferente (.aux). Agora, basta utilizar alinha de comando “bibtex nome” (sendo “nome” o nome do arquivo fonte sem extensao) eum outro arquivo externo, com outra extensao, sera gerado. Este segundo arquivo sera suabibliografia. Bsta compilar novamente seu arquivo fonte para que a bibliografia apareca aofim do documento.

6.11 Indice Remissivo

O ındice remissivo e um ındice criado com uma lista de palavras selecionadas pelo au-tor, relacionando-as com suas localizacoes (pagina). O LATEXpermite a geracao automaticadeste ındice, necessitando apenas do pacote \usepackagemakeidx presente no preambulo.Ainda no preambulo devera ser incluıdo o comando \makeindex. Depois disso, basta seleci-onar as palavras que serao incluıdas no ındice remissivo e o local onde o ındice sera impresso.Para escolher o local, basta invocar o comando \printindex no local onde o ındice deveraestar localizado.

Ja para selecionar as palavras, basta invocar (geralmente, ao lado da palavra, para quenao haja diferenca entre a pagina em que a palavra estara e a pagina deste comando)\indexgrupo!elemento. No exemplo anterior, o ındice contera uma entrada como abaixo.

grupo,1

elemento, 1

Ou seja, caso haja um grande topico que englobe diversos elementos (ou palavras), bastacoloca-lo no comando \indexGRANDE-TOPICO!... antes da palavra a qual se quer fazeruma referencia, separando as duas pelo ponto de exclamacao (!).

5Eu optei por montar estes dois arquivos, inserindo sempre nomes de artigos e livros que vou sentindo anecessidade de utilizar. Aos poucos, percebe-se a facilidade e praticidade que esta opcao traz.

Page 42: Latex Intro

6.12. NOTAS DE RODAPE E NAS MARGENS 31

6.12 Notas de rodape e nas margens

Basta utilizar o comando ~\footnoteNOTAS no ponto do texto onde a nota de ro-dape for convieniente. Por exemplo, no capıtulo 2, em um dos itens de argumentos para odocumentclass, foi escrito apenas o que esta listado abaixo.

o \LaTeX funcionada apenas se o usuario digitasse certos

codigos especiais para a acentuac~ao tambem~\footnoteEu peguei

essa epoca...), o que torna a digitac~ao muito mais veloz;

Para acrescentar notas nas margens, basta utilizar o comando \marginpar.

6.13 Dividindo o arquivo fonte

Para a producao de textos maiores e essencial, que se divida o arquivo fonte em ar-quivos menores e que possam ser processados em separado para diminuir o tempo de pro-cessamento. Para isso, pode ser empregado o comando \includearquivo junto com ocomando \includeonlylista de arquivos no preambulo, contendo uma lista de arqui-vos que devem ser lidos pelo LATEX. Os nomes dos arquivos na lista de arquivos devem serseparados por vırgula a terminacao .tex deve ser suprimida. Se o comando \includeonly

for suprimido, entao todos os arquivos sao lidos e processados.Os capıtulos foram escritos em arquivos separados com nomes intwin.tex, intmatl.tex,

intlat.tex, . . . . O arquivo principal contem o texto

\documentclass[a4paper,12pt]book

. . . . . . .

\includeonly. . .

. . . . . . .

\begindocument

\maketitle

\tableofcontents

\includeintwin

\includeintmatl

\includeintlat

. . . . . . .

\enddocument^

Colocando uma entrada apropriada no comando \includeonly e possivel o processamentode alguns capıtulos seletivamente. Por exemplo, \includeonlyintmatl,intlat faz comque o LATEXprocesse o tıtulo, o conteudo e os capıtulos de Introducao ao Matlab (intmatml)e de Introducao ao LATEX(intlat).

6.14 Protegendo comandos. . .

O texto dado como argumento de comandos como \caption ou \section pode aparecermais do que uma vez no documento (exemplo, na tabela de conteudos assim como no corpo dodocumento). Alguns comandos falham quando usados no argumento de outros comandos dotipo \section. Estes sao chamados comandos frageis. Por exemplo, os comandos \footnoteou \phantom sao frageis. O que estes comandos precisam para funcionar corretamente e deprotecao. Pode-se protege-los usando o comando \protect antes deles. O \protect apenas

Page 43: Latex Intro

32 CAPITULO 6. DETALHES, INDICES E FIGURAS

se refere ao comando que se lhe segue, nem sequer ao seu argumento. Em muitos casos, um\protect superfluo nao magoaria ninguem.

\sectionEstou a considerar

\protect\footnoteproteger a minha nota

Page 44: Latex Intro

Apendice A

Todas as Letras Gregas

α \alpha ι \iota % \varrho

β \beta κ \kappa σ \sigma

γ \gamma λ \lambda ς \varsigma

δ \delta µ \mu τ \tau

ε \epsilon ν \nu υ \upsilon

ε \varepsilon ξ \xi φ \phi

ζ \zeta o o ϕ \varphi

η \eta π \pi χ \chi

θ \theta $ \varpi ψ \psi

ϑ \vartheta ρ \rho ω \omega

Tabela A.1: Todas as letras gregas minusculas, com suas respectivas variacoes.

33

Page 45: Latex Intro

Apendice B

Sımbolos Matematicos

\pm ± \cdots · · · \cong ∼=

\cap ∩ \vdots... \vecx ~x

\circ \int∫

\hatx x

\S § \sum∑

y \cdot x y · x

\partial ∂ \prod∏

\dotx x

\infty ∞ \oint∮

\ddots. . .

\le ≤ \mid | \div ÷

\ll \times × \Re <

\not \le 6≤ \wedge ∧ \Im =

\approx ≈ \mid | \hbar ~

\angle ∠ \ell ` \diamond

\in ∈ \otimes ⊗ \left\langle 〈

\notin /∈ \oplus ⊕ \left| |

\cup ∪ \ominus \flat [

\subset ⊂ \supset ⊃ \emptyset ∅

\bigcup⋃

\bigcap⋂

\sharp ]

\subseteq ⊆ \supseteq ⊇ \natural \

\triangleleft / \triangleright . \surd√

\top > \imath ı \jmath

Tabela B.1: Sımbolos matematicos muito comuns.

34

Page 46: Latex Intro

35

\leftarrow ← \rightarrow → \leftrightarrow ↔

\Leftarrow ⇐ \Rightarrow ⇒ \Leftrightarrow ⇔

\uparrow ↑ \downarrow ↓ \updownarrow l

\Uparrow ⇑ \Downarrow ⇓ \Updownarrow m

\leftharpoonup \rightharpoonup \rightleftharpoons

\leftharpoondown \leftharpoondown \eightharpoondown

\mapsto 7→ \longmapsto 7−→ \hookleftarrow ←

\hookrightarrow → \nearrow \searrow

\swarrow \nwarrow \longleftarrow ←−

\longrightarrow −→ \longleftrightarrow ←→ \Longleftarrow ⇐=

\Longrightarrow =⇒ \Longleftrightarrow ⇐⇒ \stackreltexto\rightarrowtexto→

Tabela B.2: Sımbolos para todos os tipos de flechas.

Page 47: Latex Intro

Apendice C

Curvas de Bezier

No campo de analise numerica, uma curva de Bezier e uma curva parametrica, importan-tante em computacao grafica, polinomial expressa como combinacao baricentrica de algunspontos representativos, chamados de pontos de controle. A generalizacao das curvas de Bezierpara outras dimensoes maiores sao chamadas de superfıcies de Bezier, da qual o triangulode Bezier e um caso especial.

Estas curvas foram muito utilizadas por volta de 1962 pelo engenheiro frances PierreBezier, que as usava para desenhar corpos de automoveis. Mas o primeiro desenvolvimentode curvas deste tipo foi feito por Paul de Casteljau, usando o algorıtmo de Casteljau, metodonumerico estavel para gerar curvas de Bezier.

C.1 Caso geral

Sem muitas delongas, a curva de Bezier de grau n pode ser descrita como, dados ospontos Pi, com i ∈ I,

B(t) =n∑

i=0

(n

i

)Pi(1− t)n−iti, t ∈ [0, 1]. (C.1)

Entao t sera apenas o parametro pelo qual parametrizamos nossa curva. Para obter asdiferentes curvas de Bezier, basta variarmos o grau e os pontos. Podemos tentar algunsexemplos.

C.1.1 Curva de Bezier linear

Fazendo n = 1 e fornecendo os pontos P0 e P1, fica facil calcular, pela (C.1),

B(t) = (1− t)P0 + tP1. (C.2)

Observe que a (C.2) e a equacao de uma reta que passa pelos pontos fornecidos, e seucoeficiente angular pode ser obtido rearranjando a (C.2) de forma a chegar em

B(t) = P0 + t(P1 − P0), (C.3)

ou seja, seu coeficiente angular e (P1 − P0).

36

Page 48: Latex Intro

C.1. CASO GERAL 37

C.1.2 Curva de Bezier quadratica

Analogamente a secao anterior, tres pontos (que sempre estarao em um plano, claro) saodados e tomando n = 2, podemos calcular a partir de (C.1) a equacao geral da curva deBezier quadratica,

B(t) = (1− t)2P0 + 2t(1− t)P1 + t2P2. (C.4)

C.1.3 Curva de Bezier cubica

Quatro pontos P0, P1, P2 e P3 em um plano ou em um espaco tridimensional definem acurva quadratica de Bezier. A curva comeca em P0 e acaba-se em P3, mas, usualmente, podenao passar por P1 ou P2; estes dois pontos tem interpretacao puramente geometrica e daoinformacoes direcionais a curva (as quais nao compensa distutirmos nesta oportunidade). Adistancia entre P0 e P1 determina “o quanto a curva se movera” na direcao de P2 antes dechegar em P3. Tomando n = 3, vamos calcular pela ultima vez a curva:

B(t) = (1− t)3P0 + 3t(1− t)2P1 + 3t2(1− t)P2 + t3P3. (C.5)

Page 49: Latex Intro

Indice

ambientes, 7abstract, 4, 28eqnarray, 14equation, 14figure, 25picture, 20table, 27verbatim, 11

ambientessubeqnarray, 15

Bezier, curvas de, 21bibtex, 30bounding box, 25

caption, 31colorlinks, 29

citecolor, 29filecolor, 29linkcolor, 29urlcolor, 29

documentclass, 3article, 3book, 3report, 3revtex4, 3slide, 3

footnote, 31

hıfens, 8

indent, 6indice remissivo, 2Indices

listoffigures, 28listoftables, 28tableofcontents, 8

limite, 19limits, 18

Mudando a corda fonte, 12da pagina, 13

do fundo da fonte, 13

newcommand, 17nonumber, 14

overline (barras), 19

pacoteshyperref, 28subeqnarray, 15

phantom, 31picture, 20posicionamento, 25preambulo, 2protect, 31put, 21

line, 21multput, 21

referenciaeqref, 23label, 5, 14, 23ref, 23

sımbolos matematicos especiais, 16section, 31sobrescrito, 18subscrito, 18

unitlength, 20

38