A linguagem LaTeX

A LaTeX é uma linguagem que permite criar documentos escritos (relatórios, resumos, livros e cartas) de ótima qualidade. Na verdade, apesar desta linguagem parecer difícil à primeira vista, ela permite obter um excelente resultado (em termos de layout), tão bom quanto com os processadores de texto convencionais graças ao princípio da LaTex. Além disso, a linguagem permite que o usuário tenha controle total sobre o layout de um documento. Viabiliza, ainda, que o código dos arquivos seja reutilizado.

O que é a linguagem LaTeX

A LaTeX se baseia principalmente nos trabalhos de dois pesquisadores. O primeiro é Donald E. Knuth que criou a linguagem TeX em 1978, cujo objetivo, de acordo com suas próprias palavras, era resolver dificuldades da edição de livros da época. O segundo, Leslie Lamport, decidiu tornar a TeX mais leve definindo comandos simples com a ajuda de macros (cadeias de comandos). O resultado é a LaTeX, espécie de metalinguagem

O objetivo dessa dica é permitir que alguém que não conheça a LaTeX use suas funcionalidades básicas e um usuário com mais experiência encontre com mais facilidade os comandos que necessita.

Como compilar um arquivo LaTeX

A LaTeX é uma linguagem compilada (parte-se de um arquivo fonte para chegar a um arquivo alvo). A fonte é geralmente um arquivo texto, cuja extensão é TEX, e o alvo é um arquivo DVI, POSTSCRIPT ou PDF.

O comando de base para compilar é:

latex <nome do arquivo fonte</ital>></ital>

.

Se a compilação se der sem erros, o resultado deste comando será um arquivo do mesmo nome que o arquivo fonte, mas com a extensão DVI (formato livre).

Layout com a LaTeX

O layout é realizado com a ajuda de comandos precedidos de um caractere \ (barra oblíqua inversa) para que o compilador saiba que se trata de um comando LaTeX.

Por padrão, estes comandos têm um alcance geral sobre o documento. Para remediar esse probleminha, é preciso delimitar seu alcance definindo uma área de ação. Esta área é definida pelo uso de colchetes. O comando \bf permite colocar o texto em negrito. Veja alguns exemplos com diferentes alcances:

\bf{texto1 texto2}: texto1 texto2 
\bf{texto1} texto2: texto1 texto2

Certos comandos utilizam argumentos opcionais, cuja sintaxe global dos comandos é \ command[option1]... [option n] {texto no qual se aplica o comando}.

Caracteres especiais

Na medida em que certos caracteres possuem uma significação particular para o compilador LaTeX, é necessário escapar deles fazendo com que um caractere de escape lhes preceda. Veja um quadro apresentando estes caracteres:

Caractere $<td width="40" align="center"> &<td width="40" align="center"> % # { } _ \ ^ ~
Caractere de escape \$<td width="40" align="center"> \&<td width="40" align="center"> \% \# \{ \} \_ \ \^ \~

O cabeçalho

Os comandos de formatação

Antes de digitar o texto que aparecerá no documento final, é preciso escrever alguns comandos de formatação. Os comandos de formatação definem as características do documento como, por exemplo, a classe do documento (artigo, relatório, carta, livro, etc.) ou o tipo de letra que será utilizado para a exibição do texto. A estrutura geral de um comando é a seguinte:

\command[option]{argumento}

A classe do documento

O primeiro comando, a incluir bem no início do arquivo, é o \documentclass. Ele define a classe do documento e as opções a serem aplicadas nele. Exemplo:

\documentclass[a4paper,11pt] {article}

Existem cinco classes de documentos:

Article (artigo): permite criar documentos curtos, como resumos de trabalhos ou de reuniões;
Report (relatório): é utilizado para documentos mais longos, pois ele produz os capítulos, o que a classe article não faz;
Book (livro): permite criar livros e é muito parecido com a classe report; Letter (carta) serve para escrever correspondências;
Slides permite criar diapositivos.

As opções do comando \documentclass influenciam o layout. Assim, a opção a4paper permite adaptar as margens do documento para que ele seja imprimível no formato A4. A opção 11pt define o tamanho dos tipos de letra em 11 pontos (o ponto valendo 1/72° polegadas e 1 polegada valendo 2,54 cm). O padrão dos caracteres é de 10pt.

Preâmbulo

Os comandos seguintes constituem o preâmbulo e se situam entre o comando \documentclass e o início real do documento. O preâmbulo contém comandos de download de extensões. Estas extensões permitem modificar o layout ou adicionar novas funcionalidades à LaTeX. Veja algumas delas entre as mais utilizadas:

\usepackage[latin1]{inputenc}: permite utilizar os caracteres ISO 8859-1, o que significa que você pode digitar diretamente os caracteres acentuados. Sem esta extensão é necessário utilizar uma sintaxe particular para a exibição dos acentos;

\usepackage[T1]{fontenc}: permite especificar à LaTeX a utilização da codificação dos caracteres T1, nova norma LaTeX não utilizada como padrão por razões de compatibilidade com os antigos documentos LaTeX;

\usepackage[portuguese]{babel}: permite a adaptação da LaTeX ao português. Em particular, a introdução do documento é chamada de sumário e não table of contents. Durante a compilação, a LaTeX converte os caracteres acentuados em caracteres Unicode (conjunto padronizado e universal de caracteres);

\usepackage{verbatim}: permite incluir texto não interpretado pela LaTeX. No documento , o texto (e, em particular, caracteres especiais, comandos LaTeX ou código) que fica entre \begin{verbatim} e \end{verbatim} não será interpretado durante a compilação do arquivo LaTeX e aparecerá exatamente assim no documento final;

\usepackage{graphicx}: veja ‘Inserção de imagens’, mais abaixo no texto.

Outros comandos

Os seguintes comandos também podem ser inseridos no cabeçalho do arquivo TEX para especificar as informações sobre a criação do documento:

\title{título}: permite dar um título ao seu documento;

\author{nome do autor}: permite mostrar o nome do autor sob o título do documento. Se houver vários autores, eles serão classificados em ordem alfabética;

\date{data}: permite exibir a data no início do documento. Se você não especificar nenhuma data entre os colchetes, a data do dia aparecerá.

Veja um exemplo recapitulativo das explicações:

\documentclass[a4paper,11pt]{report}             
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[normalem]{ulem}
\usepackage[portuguese]{babel}
\usepackage{verbatim}
\usepackage{graphicx}
\title{resumo das conferências – mestrado em Informática 2003/2004}
\author{Lucio NEVES e Antônio PEREIRA}
\data{}
\begin{documento}
Texto contido no documento
\end{documento}

Observação: o texto que aparecerá no documento final é escrito entre \begin{document} e \end{document}.

Como organizar um documento LaTeX

Alguns comandos permitem organizar os documentos LaTeX. Você pode organizar o documento em diferentes partes e subpartes graças aos seguintes comandos:

\part{título}, \chapter{título}, \section{título}, \subsection{título}, \subsubsection{título}, \paragraph{título} e \subparagraph{ título }.

Estes comandos não são completamente disponíveis para todas as classes (espaçamento diferente, entre outras). Por exemplo, o comando \chapter não é suportado por documentos da classe report. Além de criar os títulos para cada parte, esses comandos são usados pela LaTeX para criar o índice. No entanto, se você não quiser ver o título de uma parte no índice, basta precedê-lo de um asterisco:

\subseção*{título}

Para mostrar a tabela de conteúdos no documento LaTeX final, basta digitar o comando \tableofcontents depois do comando \begin{document}.

Como utilizar diversos arquivos LaTeX

Outra maneira prática de organizar a criação de um documento LaTeX é usar vários arquivos LaTeX para criar um único documento final. Para fazer isso, basta criar um documento LaTeX principal, contendo, em particular, o cabeçalho (descrito acima) e os arquivos TEX anexos cujo texto será incluído no documento final.

Esses anexos não devem conter nem cabeçalho nem os comandos \begin{document} e \end{document}. Somente o código LaTeX, a ser incluído realmente, deve ser escrito nos arquivos anexos. O arquivo principal suporta todas as formatações, carregamento de extensões e início e fim de documento.

Exemplo: Código do arquivo principal test.tex:

\documentclass[a4paper,11pt]{article}        
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[normalem]{ulem}
\usepackage[portuguese]{babel}
\usepackage{verbatim}
\usepackage{graphicx}
\title{Test}
\author{Lucio NEVES e Antônio PEREIRA}
\date{}
\begin{document}
\maketitle \clearpage
\tableofcontents \clearpage
\input{test1}
\input{test2}
\end{document}

Código do arquivo anexo test1.tex:

\section{Espero que funcione}  
Ah sim, realmente! \clearpage

Código do segundo arquivo anexo test2.tex :

\section{E se não funcionar, é porque tem alguma coisa errada}        
Ah sim, realmente! \clearpage

Observe a presença de dois comandos específicos: o comando \clearpage, que permite que você não mostre nada na página atual (o seguinte código de texto aparecerá em uma nova página - comando mais ou menos equivalente: \newpage) e o comando \maketitle, que permite a exibição da página do título cujas características foram bem especificadas no cabeçalho.

Se você desejar criar um anexo com uma numeração particular, basta utilizar o comando \appendix, as sessões ou capítulos que você utilizará serão numerados com letras maiúsculas. O anexo também aparecerá no índice.

É possível usar referências a objetos já definidos. O comando \label{nome da referência} é usado para definir a referência, o comando \ref{nome da referência} permite que você use o número da referência e, para concluir, o \pageref{nome da referência} permite usar o número de página da referência. Para utilizar uma numeração relativa às figuras, sessões (e outras partes) e tabelas, o nome de referência deve ser digitado assim:

{fig:nome da figura}: para uma figura;
{tab:nome da tabela}: para uma tabela;
{section:nome da sessão}: para uma sessão;
{subsection:nome da subsessão}: para uma sub sessão etc.

Como formatar a LaTeX

O estilo

Os seguintes comandos permitem modificar o estilo do texto:

\textbf{texto para colocar em negrito} permite escrever o texto com caracteres em negrito;

\textit{texto para ser colocado em itálico} permite escrever em itálico;

\textsc{texto para ser colocado em letras maiúsculas} permite colocar o texto em pequenas maiúsculas;

\textrm{texto em Roman} permite escrever utilizando a fonte Roman;

\textsf{texto em Sans serif} permite de escrever utilizando a letra tipo Sans serif.

O tamanho dos caracteres

A LaTeX também dispõe de comandos para modificar o tamanho dos caracteres. Os seguintes comandos são ordenados por ordem crescente do tamanho que dão ao texto: \tiny, \scriptsize, \footnotesize, \small, \normalsize, \large, \Large, \LARGE, \huge, \Huge.

O layout

Também é possível forçar o layout do documento usando os comandos alimentação de linha, quebra de página e espaçamento:

Para terminar um parágrafo e pular a linha no documento, basta deixar uma linha em branco no arquivo TEX. Por outro lado, para pular uma linha no documento final, basta utilizar o comando \newline, ou então \\.

O comando \newpage permite que você inicie uma nova página, assim como o comando \clearpage que, além disso, força a exibição de figuras e tabelas flutuantes na página atual (maiores detalhes sobre isso na sessão ‘Tabelas’, mais abaixo). Também é possível inserir um espaço horizontal ou vertical usando os respectivos comandos \hspace{size} e \vspace{size}, o tamanho pode ser expresso em mm e cm. O espaço criado pode ser um pouco comprimido pela LaTeX por questões de layout. Para inserir um espaço incompreensível, basta acrescentar um asterisco ao comando:

\vspace*{7mm}

.

A apresentação

A apresentação do texto também pode ser melhorada graças aos ambientes itemize, enumerate e description. Os exemplos que seguem explicam seu uso:

O ambiente \ textbf {itemize} permite:   
\begin{itemize}
\item{estruturar o seu texto;}
\item{ventilá-lo;}
\item{facilitar sua leitura.}
\end{itemize}
\vspace{1cm}
O ambiente \ textbf {enumerate} também permite:
\begin{enumerate}
\item{estruturar o seu texto;}
\item{ventilá -lo;}
\item{facilitar sua leitura.}
\end{enumerate}
\vspace{1cm}
O ambiente \ textbf {description}, quanto a ele, permite descrever os
elementos insistindo em cada elemento: \newline
\begin{description}
\item[o primeiro elemento]{é descrito.}
\item[o segundo elemento]{também.}
\item[o terceiro elemento]{também.}
\end{description}

O código acima dá o seguinte resultado:

O ambiente itemize permite:

  • Estruturar seu texto;
  • Ventila-lo;
  • Facilitar sua leitura.

O ambiente enumerate também o permite.

O ambiente description permite descrever os elementos insistindo em cada elemento:

  • O primeiro elemento é descrito.
  • O segundo elemento também.
  • O terceiro elemento também.

A cor do texto

É possível atribuir uma cor ao texto graças ao ambiente color (\usepackage{color}):

\textcolor{cor}{texto a ser colorido} permite atribuir a cor;
\colorbox{cinza25}{Atividades:} exibe um texto sobre fundo colorido;

\fcolorbox{cor das bordas}{cor do plano de fundo}{texto} cria uma moldura em volta da cor do plano de fundo;
\pagecolor{cor} define a cor de fundo da página.

LaTeX propõe oito cores pré-definidas: black , white, red , green, blue, cyan, magenta e yellow.

Novas cores podem ser definidas graças aos comandos \definecolor{nome da cor}{rgb}{valor do vermelho, valor do verde, valor do azul} ou \definecolor{cmyk}{cyan, magenta, amarelo, preto}.

Veja alguns exemplos de cores:

\definecolor{rltred}{rgb}{0.75,0,0}        
\definecolor{rltgreen}{rgb}{0,0.5,0}
\definecolor{oneblue}{rgb}{0,0,0.75}
\definecolor{marron}{rgb}{0.64,0.16,0.16}
\definecolor{forestgreen}{rgb}{0.13,0.54,0.13}
\definecolor{purple}{rgb}{0.62,0.12,0.94}
\definecolor{dockerblue}{rgb}{0.11,0.56,0.98}
\definecolor{freeblue}{rgb}{0.25,0.41,0.88}
\definecolor{myblue}{rgb}{0,0.2,0.4}

Como inserir imagens na LaTex

Estilo

A LaTeX permite inserir imagens de diferentes formatos. O mais simples é inserir arquivos do tipo eps (Encapsuled Postscript):

Basta inserir no preâmbulo a seguinte linha:

\usepackage{graphicx}

Em seguida, inserir o arquivo de imagem usando o comando:

\includegraphics{arquivo.eps}

Algumas opções:

[width=5cm]: define a largura da imagem em 5 cm;
[height=3cm]: define a altura em 3 cm;
[angle=45]: aplica uma rotação de 45 graus.

Exemplo:

\includegraphics[width=7cm,height=50mm]{arquivo.eps}

Observação: ao invés de especificar uma medida em centímetros, é possível utilizar um tamanho relativo ao texto. Por exemplo, [width=0.75\textwidth] significa: "A largura do gráfico será de 75%, a da largura do texto na página”.

Para os arquivos não eps, quando o sistema operacional não gera os tubos nomeados (direcionamentos de entrada-saída, também chamados de ‘pipas’), em particular nos sistemas Windows, a inserção não funciona diretamente. Nos sistemas de tipo Unix (particularmente Linux), isso funciona perfeitamente. Compilando o arquivo LaTeX para obter um PDF com o programa pdfLaTeX, a inclusão pode ser feita diretamente em qualquer sistema.

Se a inclusão de arquivos não eps sempre causa um problema, o melhor é converter os arquivos em EPS (o software ImageMagick) permite, entre outras, converter formatos graças ao comando convert.

Para inserir imagens contendo grandes superfícies monocrômicas, prefira o formato PNG ao formato JPG, pois o resultado é geralmente bem melhor.

A LaTeX também fornece um ambientefigure que permite colocar figuras, automaticamente, para evitar o corte de gráficos em várias páginas (isto pode ser problemático).

Gerenciamento das tabelas

Como criar tabelas

As tabelas permitem uma melhor estrutura do documento, tornando-o mais compreensivo e mais legível. LaTeX fornece um ambiente para criar tabelas de forma simples:tabular.

Uma tabela se define entre os comandos \begin{tabular} e \end{tabular}. A primeira etapa consiste em definir a gestão das colunas. Isso é feito entre colchetes:\begin{tabular}{definição}.

O conteúdo de uma coluna pode ser centrado (c) ou posicionada à esquerda (l) ou à direita (r). Para definir diversas colunas da mesma maneira, basta utilizar a seguinte sintaxe:

{número de colunas a ser definido}{definição a ser aplicada nestas colunas}

.

Para traçar as delimitações entre as colunas, basta usar o caractere |. Em seguida, o conteúdo deve ser definido linha por linha. Os elementos devem ser separados, coluna por coluna, com a ajuda do caractere &. Finalizando, o comando \hline permite traçar um traço de união entre 2 linhas.

Veja um exemplo de código LaTex para tabela:

\begin{tabular}                
l r| l}
\hline
centro & centro & esquerda & direita \\
caixa centrada & ainda centrada & à esquerda & à direita \\
% Traçamos duas linhas
\hline
\hline
caixa centrada & ainda centrada & à esquerda & à direita \\
\end{tabular}

Veja o resultado:

centro
caixa centrada
centro
ainda centrada
esquerda direita
à esquerda à direita
caixa centrada ainda centrada à esquerda à direita

Observação: somente os separadores definidos foram traçados (nenhum separador foi definido para a parte de baixo).

Expressões matemáticas

Como são escritas as expressões matemáticas

LaTeX possui um modo matemático muito desenvolvido que permite a edição de equações e fórmulas de maneira simples e com um bom resultado. LaTeX produz ela mesma, e sozinha, o layout destas fórmulas.

Existem duas maneiras de entrar em modo matemático. A primeira consiste em ficar no corpo do texto e de enquadrar as fórmulas matemáticas pelo caractere $. Quando o caractere $ é duplo ($$), a fórmula enquadrada é destacada do corpo do texto.

Por exemplo, texto $ fórmula $ texto resulta em

texto fórmula texto 

Em compensação, o comando texto $$ fórmula $$ texto resulta nisso:

texto 
fórmula
texto

Comandos em modo matemático

Veja uma lista de comandos particularmente úteis em modo matemático:

Índices e expoentes

Índices: $ X_{índices} $;
Expoentes: $ X^{expoente}$.

Observação: se houver apenas um símbolo em índice ou em expoente, então é possível omitir os colchetes.

Operadores matemáticos

  • Frações: $\frac{numerador}{denominador}$;

  • Raiz: $\sqrt{expressão}$ </bold>para a raiz quadrada $\sqrt[n]{expressão}$ para uma raiz enésima;

  • Soma: <strong>$ \displaystyle {\sum_{condição de partida}^{condição de chegada}} expressão da soma$ <strong>;

  • Integrais: <strong>$\int_partida^chegada f(x)dx$ <strong>;

  • Limites: <strong>$ \displaystyle {\lim_{variável \rightarrow (valor para o qual tende a variável)}}f(x)$ <strong>.

Matrizes

Para definir matrizes, podemos utilizar o ambiente Array ou utilizar o pacote amsmath; então, é preciso colocar o comando \usepackage{amsmath} no cabeçalho do documento com os seguintes ambientes:

  • Matriz.
  • Pmatrix para uma matriz enquadrada por parênteses.
  • Patrix para uma matriz enquadrada por chaves.
  • Vmatrix para uma matriz enquadrada por linhas verticais.
  • Vmatrix para uma matriz enquadrada por linhas duplas.

Veja um exemplo de matriz:

$ \begin{pmatrix}      
element1&element2 \\
element3&element4
\end{pmatrix}$

E seu resultado gráfico:

Outros símbolos

Existe uma tabela de caracteres que permite utilizar uma grande variedade de símbolos.

Tabela de caracteres

Observação: certos caracteres não aparecem em certos navegadores (particularmente em certas versões do Internet Explorer), eles são substituídos por um quadrado, a descrição permite entender o sentido.

Símbolos matemáticos

Símbolos Descrição Comando LaTeX? Codificação Unicode correspondente
? para todos
\forall
8704
? parcialmente
\part
8706
? existe
\exist
8707
? vazio
\emptyset
8709
? nabla
\nabla
8711
? elemento de
\in
8712
? não é um elemento de
\notin
8713
? contém como elemento
\ni
8715
? produto
\prod
8719
? soma
\sum
8721
? menos
-
8722
? raiz quadrada
\sqrt
8730
? infinito
\infty
8734
? e
\wedge
8869
? ou
\vee
8870
? ponto de intersecção
\cap
8745
? unidade
\cup
8746
? integral
\int
8747
? semelhante à
\sim
8764
? sensivelmente igual à
\cong
8773
? quase igual à
\approx
8776
? diferente de
\ne
8800
? idêntico à
\equiv
8801
? menor ou igual
\le
8804
? maior ou igual
\ge
8805
? compreendido em
\subset
8834
? contendo
\sup
8835
? não está compreendido em
\notin
8836
? compreendido em ou igual a
\subseteq
8838
? contendo ou igual à
\supseteq
8839
? somatório
\oplus
8853
? produto vetorial
\otimes
8855
? perpendicular à
\perp
8869
? operador ponto
\cdot
8901

Símbolos flechados (com setas)

Signos Descrição Comando LaTeX Codificação Unicode correspondente
? seta para a esquerda
\leftarrow
8592
? seta para cima
\uparrow
8593
? seta para a direita
\rightarrow
8594
? seta para baixo
\downarrow
8595
? seta para a esquerda/para a direita
\leftrightarrow
8596
? seta para baixo dobrada para a esquerda
\hookleftarrow
8629
? seta dupla para a esquerda
\Leftarrow
8656
? seta dupla para cima
\Uparrow
8657
? seta dupla para a direita
\Rightarrow
8658
? seta dupla para baixo
\Downarrow
8659
? seta dupla para a esquerda/para a direita
\Leftrightarrow
8660

Letras gregas

Símbolos Descrição Comando LaTeX Codificação Unicode correspondente
? Alpha maiúscula
\Alpha
913
? alpha minúscula
\alpha
945
? Beta maiúscula
\Beta
914
? beta minúscula
\beta
946
? Gama maiúscula
\Gamma
915
? gama minúscula
\gamma
947
? Delta maiúscula
\Delta
916
? delta minúscula
\delta
948
? Épsilon maiúscula
\Epsilon
917
? épsilon minúscula
\epsilon
949
? Dzeta maiúscula
\Zeta
918
? dzeta minúscula
\zeta
950
? Eta maiúscula
\Eta
919
? eta minúscula
\eta
951
? Teta maiúscula
\Theta
920
? teta minúscula
\theta
952
? Iota maiúscula
\Iota
921
? iota minúscula
\iota
953
? Capa maiúscula
\Kappa
922
? capa minúscula
\kappa
954
? Lâmbda maiúscula
\Lambda
923
? lâmbda minúscula
\lambda
955
? Mi maiúscula
\Mu
924
? mi minúscula
\mu
956
? Ni maiúscula
\Nu
925
? ni minúscula
\nu
957
? Ksi maiúscula
\Xi
926
? ksi minúscula
\xi
958
? Omicron maiúscula
\Omicron
927
? omicron minúscula
\omicron
959
? Pi maiúscula
\Pi
928
? pi minúscula
\pi
960
? Rho maiúscula
\Rho
929
? rho minúscula
\rho
961
? Sigma maiúscula
\Sigma
931
? sigma minúscula
\sigmaf
962
? sigma minúscula
\sigma
963
? Tau maiúscula
\Tau
932
? tau minúscula
\tau
964
? Upsilon maiúscula
\Upsilon
933
? upsilon minúscula
\upsilon
965
? Phi maiúscula
\Phi
934
? phi minúscula
\phi
966
? Khi maiúscula
\Chi
935
? khi minúscula
\chi
967
? Psi maiúscula
\Psi
936
? psi minúscula
\psi
968
? Ômega maiúscula
\Omega
937
? ômega minúscula
\omega
969

Foto: ©Benjamin Dada - Unsplash.

Nosso conteúdo é produzido em colaboração com especialistas em tecnologia da informação sob o comando de Jean-François Pillou, fundador do CCM.net. CCM é um site sobre tecnologia líder em nível internacional e está disponível em 11 idiomas.
Este documento, intitulado 'A linguagem LaTeX ', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.

Assine nossa newsletter!

Assine nossa newsletter!