LaTeX

Em 1978, Donald Knuth desenvolveu um sistema de compilação textual chamado TeX (lê-se téc). Nos anos 80, Leslie Lamport transformou o sistema TeX em uma linguagem markup chamada LaTeX. LaTeX é um conjunto de macros para o programa de diagramação de textos TeX, muito utilizado para escrever monografias e textos científicos. É uma ferramenta poderosa para utilizar caracteres especiais, comuns em fórmulas matemáticas, gráficos, textos contendo trechos em idiomas com outros alfabetos e até mesmo partituras musicais. Sua ideia central é distanciar o autor o máximo possível da apresentação visual da informação, pois a constante preocupação com a formatação desvia o pensamento do conteúdo escrito. Também é mais fácil alterar aspectos de estilo depois de escrito o arquivo, diferentemente de editores de texto conhecidos como "WYSIWYG", onde você vê imediatamente o resultado da edição gráfica enquanto escreve o conteúdo.

Extração de látex na seringueira... não, não é esse latex.

Extração de látex na seringueira... não, não é esse latex.

O sistema LaTeX fornece ao usuário um conjunto de comandos de alto nível, que indicam a formatação desejada e podem ser escritos em qualquer editor de texto simples, como o gedit, o bloco de notas ou mesmo o nano. O programa TeX compila esses comando e exporta o conteúdo gerado para um arquivo, sendo o formato mais popular o PDF. Isso traz mais rapidez à edição de grandes documentos, pois o processador não precisa trabalhar o tempo todo para formatar o documento, já que a diagramação só é feita uma vez, após o término da edição. Adiantando um exemplo: para inserir um índice simplesmente utilize o comando "\tableofcontents" para gerá-lo a partir da segunda vez que gerar seu documento final.

Como os documentos preparados no LaTeX possuem estruturação apenas lógica, são necessárias classes que formatem o documento segundo as convenções de instituições como a ABNT (Associação Brasileira de Normas Técnicas). Os muitos pacotes criados para o LaTeX são essenciais para que os usuários do sistema tenham maior liberdade na criação dos documentos.

Instalação

Utilize o repositório para instalar o programa TeX Live no Linux através do seguinte comando:

sudo apt-get install texlive texlive-lang-portuguese

O instalador incluirá vários pacotes, como o texlive-latex-recommended e latex-beamer (são algumas centenas de megas em arquivos), enquanto outros importantes estão incluídos no mesmo comando na sequência. Para instalar um pacote posteriormente, você pode simplesmente copiar o pacote (arquivo .sty) na pasta do documento que você está criando ou colocá-lo em um diretório apropriado, servindo para todos os documentos ao mesmo tempo. Para saber qual é essa pasta, primeiro digite o seguinte comando:

kpsepath tex | tr : '\n'

O comando acima retorna um conjunto de diretórios em que o LaTeX procura os arquivos ".tex". Procure um diretório parecido com "/usr/share/texmf-texlive/..." ou "/usr/share/texlive/texmf-dist/tex" e copiei o arquivo .sty para lá (como super usuário). Depois, atualize a lista de pacotes do programa, use o comando "sudo texhash".

Edição

Utilizando seu editor de texto preferido (geany, gedit, etc), crie um arquivo com extensão ".tex" que deverá conter essencialmente um preâmbulo (onde também serão chamados os pacotes utilizados) e o corpo do texto. Como exemplo de pacotes, temos o babel, que "traduz" o documento para a língua desejada - no exemplo a seguir, segue o idioma português:

\usepackage[portuguese]{babel}

Todas as funções e comandos são iniciados por uma barra invertida "\", as opções ficam dentro de colchetes "[]" (separadas por vírgula) e os argumentos estão limitados por chaves "{}". Comentários são feitos iniciando-se a linha com porcentagem "%". Para iniciar e finalizar o documento, utilize os comandos "\begin{document}" e "\end{document}", respectivamente. Veja um exemplo:

\documentclass{article}
\author{Abestado}
\title{Meu primeiro artigo em \LaTeX}
\date{\today}
\begin{document}
\maketitle

Escreva aqui o seu artigo!
\end{document}

A função "documentclass" informa o tipo de documento a ser criado (article para artigos científicos e pequenos relatórios, report para teses e pequenos livros, etc), com opções como twocolumn para deixar o texto em duas colunas, landscape para imprimir a folha deitada, a4paper para definir o papel como tamanho A4 (o default é letterpaper), etc. Também no preâmbulo do documento, pode-se editar os parâmetro de formato da página através do comando "\setlength{parâmetro}{comprimento}".

Após salvar, utilize o terminal e vá para a pasta onde está o arquivo. Compile-o através do seguinte comando:

pdflatex nome_do_arquivo.tex

Ao compilar um documento tex, alguns arquivos (.aux e .log) são gerados além do .pdf. Se executar somente o comando "latex", será gerado um arquivo .dvi que poderá ser convertido para PDF através do comando "dvipdfm".

Caracteres

O LaTeX suporta o uso de acentos e caracteres especiais de muitas linguagens. Para utilizar acento, crase e trema, deve-se utilizar a barra invertida antes do caractere e depois a letra (por exemplo: cão deve ser escrito c\~ao). Esse resumo de comandos básicos mostra bem os principais caracteres. Você também pode utilizar o seguinte script em sed para converter todos os caracteres comumente usados no português para o formato utilizado pelo LaTeX:

s/á/\\'\{a\}/g
s/é/\\'\{e\}/g
s/í/\\'\{i\}/g
s/ó/\\'\{o\}/g
s/ú/\\'\{u\}/g

s/Á/\\'\{A\}/g
s/É/\\'\{E\}/g
s/Í/\\'\{I\}/g
s/Ó/\\'\{O\}/g
s/Ú/\\'\{U\}/g

s/à/\\`\{a\}/g
s/è/\\`\{e\}/g
s/ì/\\`\{i\}/g
s/ò/\\`\{o\}/g
s/ù/\\`\{u\}/g

s/À/\\`\{A\}/g
s/È/\\`\{E\}/g
s/Ì/\\`\{I\}/g
s/Ò/\\`\{O\}/g
s/Ù/\\`\{U\}/g

s/ç/\\c\{c\}/g
s/Ç/\\c\{C\}/g

s/õ/\\~\{o\}/g
s/Õ/\\~\{O\}/g
s/ã/\\~\{a\}/g
s/Ã/\\~\{A\}/g

s/â/\\^\{a\}/g
s/ê/\\^\{e\}/g
s/î/\\^\{i\}/g
s/ô/\\^\{o\}/g
s/û/\\^\{u\}/g

s/Â/\\^\{A\}/g
s/Ê/\\^\{E\}/g
s/Î/\\^\{I\}/g
s/Ô/\\^\{O\}/g
s/Û/\\^\{U\}/g

O script acima deve ser salvo em um arquivo de texto chamado "pt2tex" e utilizado da seguinte forma em linha de comando:

sed -f pt2tex meuarquivo.tex > meuarquivonovo.tex

Desse modo, você pode escrever o texto sem se preocupar com os caracteres - somente quando aparecer porcentagem é que deve colocar um caractere de escape (barra invertida) na frente. Fica também a sugestão de criar um shell script para chamar essa rotina e em seguida compilar o arquivo, economizando tempo.

Imagens

Deve-se utilizar o pacot "graphicx" para trabalhar com imagens. Veja a sintaxe básica:

  • \begin{figure}[!htb] - inicia-se o trabalho com a imagem. As opções entre colchetes informam onde o LaTeX insere a figura na página: aqui (h - here), topo (t - top) ou embaixo (b - bottom). Ao utilizar o ponto de exclamação "!", o programa sobrepõe os paramentos de modo a determinar uma "boa" posição para o objetos.
  • \centering - a figura fica centralizada; se você omitir isto a figura ficará alinhada à esquerda.
  • \includegraphics{nome_da_figura} - é onde se insere a figura e são definidas suas opções: width (largura em cm, mm, pt, etc), height (altura), keepaspectratio (true/false para manter a proporção), scale (redimensiona a figura por um fator de escala), angle (rotaciona a figura em graus no sentido anti-horário), trim (recorta a figura pela esquerda (l - left), por baixo (b - bottom), direita (r - right) e por cima (t - top), onde l, b, r, t são comprimentos em valores numéricos), clip (para que o trim funcione defina clip=true), page (se inserir uma figura pdf de várias páginas, esta opção permite escolher qual página quer).
  • \caption{Legenda} - é a legenda; opcional.
  • \label{Rotulo} - é o rótulo, ou seja, um nome que identifica a figura para um referência cruzada, por exemplo; opcional.
  • \end{figure} - termina o trabalho com a imagem.

Tabelas

Da mesma forma que as imagens, as tabelas devem começar com "\begin{table}[h]" e terminar com "\end{table}". Dentro, são colocados legenda e outras opção antes do copro da tabela, que deve ser iniciado com "\begin{tabular}" e terminado com "\end{tabular}". Ao lado do início do coporo da tabela, pode ser incluído entre chaves a estrutura da tabela, por exemplo, "\begin{tabular}{r|cl}" indica uma tabela com 3 colunas, sendo a primeira com texto alinhado à direita, uma linha vertical, a segunda coluna centralizada e a terceira alinhada à esquerda.

O pacote "csvcimple" permite várias opções para manipular tabelas a partir de arquivos .csv, que podem ser gerados pelo excel e outros programas. A função "csvautotabular" importa os valores do arquivo e os apresenta no documento de uma maneira padrão, mas de modo bem simples.

Segue um exemplo aplicando o que foi visto até aqui para fazer um relatório simples, com capa, duas seções, texto, figura (de um gráfico) e duas tabelas. Uma tabela contém os dados no próprio script enquanto que a outra foi feita a partir de dados constantes em um arquivo .csv. Também tem uma aplicação de duas funções do pacote "numprint", para arrendondar os valores que serão apresentados no documento final:

\documentclass{article}
\usepackage[portuguese]{babel}
\usepackage{graphicx}
\usepackage{numprint}
\usepackage{csvsimple}
\usepackage[pdftex]{hyperref} % permite fazer links externos
\usepackage{indentfirst} % faz indentação também para primeiro parágrafo
\title{Relat\'orio}
\author{Monolito Nimbus}
\date{}
\begin{document}
\maketitle
\begin{figure}[!h]
\centering
\includegraphics[scale=0.6]{logo.png}
\end{figure}

\section{Apresenta\c{c}\~ao}

Motiva\c{c}\~ao e descri\c{c}\~ao r\'apida das vari\'aveis envolvidas.

Descri\c{c}\~ao r\'apida da \emph{Metodologia}.

Link externo: \href{http://www.site.com.br/path}{texto} % Colocar barra invertida antes de eventuais sinas de porcentagem

\newpage
\section{Estat\'istica}

% Figura
\begin{figure}[!h]
\includegraphics[scale=0.6]{grafico.png}
\end{figure}

% Tabela 1
\begin{table}[h]
\centering
\caption{Legenda}
\vspace{0.5cm}
\npdecimalsign{.}
\nprounddigits{2}
%\begin{tabular}{r|cn{5}{2}n{5}{2}} % Arredondamento para duas casa decimais
\begin{tabular}{r|ccc}

Data & Observado & Previsto & Porcentagem \\
\hline                               % para uma linha horizontal
2014-11-01 & 50 & 67 & 34 \\
2014-12-01 & 100 & 94 & 6 \\
2015-01-01 & 75 & 85 & 113.3333 \\

\end{tabular}
\end{table}

% Tabela 2
\csvautotabular{valores.csv}
Valores (Legenda)

\end{document}

Clique no link para ver como colocar cabeçalho e rodapé (inclusive é possível colocar imagens como conteúdo dos mesmos).

Fontes

Compartilhe o link desse texto, mas se for copiar algum trecho, cite a fonte. Valorize nosso trabalho.
Mais informações na licença de uso do site.

2 Pingbacks/Trackbacks