Por Ricardo Fernandes para o PPLWARE
Insira imagens e tabelas nos relatórios
Depois de termos apresentado na parte I os passos base para a construção de um relatório académico, hoje vamos ensinar como inserir imagens.
Depois da construção de um relatório académico em Latex na Parte I deste artigo, encontramos num tipo de documento um pouco limitado, pois este contém apenas texto, mas como todos sabem um relatório deve/pode conter mais do que simples texto.
São necessários diagramas, imagens e outros elementos gráficos, para que um relatório possa contribuir para a passagem de conhecimento entre indivíduos de forma eficiente. Muitos de nós utilizam ferramentas de produção de composição gráfica que fazem um excelente trabalho, mas ficamos um pouco desiludidos ao ver que, quando as incluímos no relatório, estas perdem qualidade e por vezes até ficam deformadas. Quem busca outro nível de excelência no que diz respeito à apresentação dos seus trabalhos, pergunta-se se existe então uma forma de melhorar estes aspectos e consequentemente apresentar melhores trabalhos, mais profissionais e com custo menor.
O sistema LaTeX, que prima pela sua excelente aparência, está repleto de pacotes e ferramentas que tornam possível a compatibilidade com os mais diversos formatos e extensões. Como tal, o LaTeX é uma tecnologia aberta ao mundo e que permite que a utilizemos conjuntamente com outras aplicações. A maior parte das aplicações de terceiros podem exportar imagens em formatos PNG e JPEG. Estes formatos tem suporte em LaTeX mas por vezes podem dar algumas dores de cabeça. O ideal, em LaTeX, é usar o formato EPS (Encapsulated PostScript), e este é o formato aceite pelo latex por defeito. Trata-se de um formato vectorial que permite o rasterize (transformar em pixels para apresentar ou imprimir) e permite também a inclusão de imagens. Este formato permite obter imagens com qualidade muito superior às imagens com bitmap, quando não se tratam de imagens fotográficas. Isto quer dizer que, para diagramas, texto e qualquer outro tipo de gráfico, deve ser usado em LaTeX preferencialmente este formato. Se possível deve ser usado este formato para todos os gráficos, pois torna-se assim mais fácil a inclusão de gráficos no documento. Mas vamos passar aos aspectos práticos:
Inclusão de uma imagem em LaTeX
Para a inclusão de imagens em LaTeX necessitamos de adicionar o pacote graphicx utilizando as seguintes marcas:
%\usepackage{graphicx}
\begin{figure}
\includegraphics[scale=1]{imagem}
\end{figure}
Neste caso trata-se de inserção de uma imagem chamada “imagem”, e com o seu tamanho original (escala 1). Trata-se do modo mais simples de inserção, visto o formato EPS ser o formato de eleição do LaTeX.
Compilação: PdfLaTeX vs. Latex
Quando produzimos um documento em LaTeX, por vezes o modo de compilação que devemos seguir pode ser diferente. Isto deve-se ao facto de existirem extensões e mecanismos externos que necessitam ser exportados para um determinado formato, e depois convertidos para outros. Em que medida é relevante falar-se disto? Por vezes recebemos um erro de compilação a dizer que o compilador não encontrou informação sobre os limites da imagem, e por isso, não sabe onde “cortar” ( LaTeX Error: Cannot determine size of graphic in imagem.jpg (no BoundingBox)). Isto acontece apenas quando usamos o método Latex , pois este só permite utilizar gráficos EPS, pelo que teremos que ser nós a especificar onde cortar para que o erro desapareça. Isto pode ser feito com duas formas:
- Utilizar o programa ebb.exe (ebb imagem.xx) na consola de modo a ser criado um ficheiro .bb com a informação sobre a “Boundary box”. Depois utilizar esses valores como parâmetros na inclusão da respectiva imagem.
- Dar como parâmetro as resolução da imagem.
O segundo método é menos trabalhoso, mas resulta da mesma forma. Utilizaremos então o seguinte (apenas para quando não estamos a compilar com pdflatex):
%\usepackage{graphicx}
%para uma imagem com resolução 350x480
\begin{figure}[h!] % "h!" ou "H" para que a imagem fique onde especificamos
%xx representa PNG, JPEG e PDF
\includegraphics[scale=1,bb = 0 0 350 480]{imagem.xx}
\end{figure}
Por outro lado quando utilizamos pdflatex também não podemos introduzir ficheiros EPS, pelo que teremos primeiro de os converter para PDF. Para mais informação consultar este link .
Colocar imagem ao centro, esquerda e direita
Para colocar a imagem nestas 3 posições diferentes, teremos de colocar imediatamente antes da marca \includegraphics as seguintes marcar:
- Esquerda : \flushleft
- Centro: \center
- Direita: \flushright
Posição da imagem na página
Em LaTeX podemos ditar a posição de um objecto na página de acordo com as nossas preferências. Por vezes, por inexistência de espaço numa dada página, objectos tais como tabelas e imagens, são movidos para a próxima página sem qualquer indicação da nossa parte. Quando queremos que um determinado objecto se mantenha numa página, sempre que possível, devido à sua informação relevante no contexto da página, normalmente tentamos fazê-lo manualmente. Ora, no LaTeX existe forma de o fazer automaticamente, especificando preferências. Desta forma podemos especificar algumas regras para a colocação de figuras no documento. As nossas preferências serão satisfeitas dependendo do espaço livre na página. Isto tenta minimizar o facto de por vezes termos espaços em branco numa dada página por mau aproveitamento do espaço.Dado que os objectos ( imagens e tabelas) contêm referências e a descrição, torna-se viável utilizá-los por vezes um pouco deslocadas do texto que as refere. Isto fornece um carácter flutuante ao objecto. É precisamente isso que é dado, um pouco de liberdade (mas utilizando as nossas preferências) para que a imagem flutue de posição. Este pacote é usado da seguinte forma:
\begin{figure}[preferência(s) de posição]
%conteúdo ...
\end{figure}
em que a preferência de posição pode ser uma das seguintes, ou um conjunto das mesmas:
- h – posicionar aproximadamente no mesmo local onde o objecto foi especificado no código fonte.
- t – posicionar no topo da página.
- b – posicionar no fundo da página.
- p – pôr numa página especial apenas para objectos flutuantes.
- ! – sobrepõe os paramentos incumbidos de determinar uma “boa” posição para o objectos.
- H – coloca o objecto precisamente no local especificado no código fonte. Pode ser usado h! em vez de H. Esta requer o pacote float.
Para utilizar a colocação de objectos de forma automática e “inteligente” usar htpb onde as ordem das mesmas não é relevante.
Para informações adicionais sobre manipulação de imagens ver aqui e aqui .
Inserir tabelas
Inserir tabelas é outra das necessidades que temos ao produzir um relatório. Existem vários pacotes para o efeito e diversas ferramentas também. A inserção de tabelas pelo método manual pode-se tornar bastante entediante, e até fazer-nos perder bastante tempo à procura da resolução de erros de compilação, ou no design da própria tabela. Por isso vou aqui apresentar a forma mais simples de fazer uma tabela e iremos passar rapidamente para as ferramentas WYSIWYG que nos irão ajudar bastante. Estas ferramentas permitem-nos ter uma ideia de como será a tabela e depois geram o respectivo código LaTeX. Ora uma forma muito simples de fazer uma tabela é a seguinte:
\begin{table}
\center
\begin{tabular}{|c|c|}
\hline (1,1) & (1,2) \\
\hline (2,1) & (2,2) \\
\hline
\end{tabular}
\caption{Tabela muito simples}
\end{table}
Isto produz o seguinte resultado:
O kile e o Texmaker contêm construtores de tabelas utilizando a filosofia WYSIWYG.