Sobre o posicionamento de figuras e tabelas no documento

Uma das queixas que escuto com mais frequência dos utilizadores de LaTeX é “As figuras (e as tabelas)! O LaTeX não as coloca onde eu as quero!”.  Sim… é um pouco como se o LaTeX tivesse vontade própria e, para nosso infortúnio, a dele não está em consonância com a nossa.  ;)

A verdade é que todos nós podemos pegar em meia dúzia (ou uma dúzia) de produtos alimentares, mandá-los para dentro de um tacho e preparar uma refeição.  Vai-nos matar a fome… mas daí a ser agradável vai uma grande diferença.

Passa-se o mesmo com a composição de texto… podemos sempre pegar nuns quanto parágrafos, combiná-los com umas imagens, e dizer que temos um texto.  A mensagem está lá… mas daí a ser agradável de ler vai também uma grande diferença.

Tal como para preparar comida saborosa é preciso saber regras e procedimentos tanto para uma boa confecção como para uma boa apresentação, também para preparar textos agradáveis de ler é preciso saber não só como escrever bem mas também como apresentar devidamente o nosso texto.  E quase todos nós sabemos muito mais de culinária (mesmo aqueles de nós que sabem muito pouco) do que de tipografia.

Mas em consolação, o LaTeX não sabe nada de culinária mas sabe tudo sobre tipografia!  E o LaTeX usa uma ponderação de mais de 20 (sim… vinte) regras para decidir onde colocar as figuras e tabelas.  Por isso, faça um favor a si próprio(a) e deixe de brigar com o LaTeX sobre a localização das figuras e tabelas.  Seja delicado(a), faça um bom uso das sugestões de posicionamento (o argumento opcional dos ambientes figure e table) e deixe o LaTeX tratar da apresentação do seu delicioso prato… perdão, da sua dissertação.

Vamos lá então ver como indicar ao LaTeX a nossa preferência de posicionamento de uma figura ou tabela.  Vou exemplificar com uma figura, mas o processo é em tudo idêntico para uma tabela:

\begin{figure}[htbp]
    \centering
    \includegraphics[…]{…}
    \caption{…}
    \label{fig:blah}
\end{figure}

O argumento opcional em causa é o [htbp], apresentado a vermelho em cima.  O significado é o seguinte:
    h — here
    t — top
    b — bottom
    p — page

Note que o argumento indica uma preferência e não uma obrigatoriedade.  O LaTeX tentará respeitar a nossa preferência se conseguir, mas há imensas razões para o LaTeX não o conseguir fazer.  Por exemplo: Os parágrafos estão perto da base da página e a figura não pode ficar entre eles pois ficava parcialmente fora da página; A página já tem uma mancha razoável ocupada com figuras e não é recomendável colocar mais figuras nesta página; etc.   Se for inflexível nas especificação do posicionamento e colocar  apenas [h]  em todas as figuras e tabelas, o LaTeX acabará por não poder respeitar o que tenta exigir e como não saberá quais as suas outras preferências, irá provavelmente adivinhar mal.

Sugestão: Quanto mais flexível for no posicionamento das figuras (i.e., indique sempre pelo menos duas ou três opções por ordem de preferência), melhor trabalho o LaTeX consegue fazer e mais satisfeito(a) ficará no final.

Comentários

  1. Gostava de partilhar a minha experiência com Latex e o template FCT-UNL.
    Após muitos anos de utilização de sucessivas versões do Microsoft Office, quando iniciei a escrita da tese de doutoramento em finais de 2015, nem sequer coloquei a hipótese de utilizar outro editor que não fosse o WORD. No entanto há medida que o numero de páginas, figuras, tabelas, listagem de código, itemização, numeração etc. etc. as dores de cabeça foram surgindo e aquilo que parece uma vantagem “what you see is what you get” acaba por ser “what you see is what word invent”, isto é as regras do word têm comportamentos não deterministas.
    Assim em desespero decidi tentar o Latex. Após algumas horas de estudo e muitas horas de Copy/Past consegui capítulo a capítulo passar tudo para ficheiros latex.
    Nem tudo é simples em latex, pois existe uma confusão tremenda entre dependências de packages e as maiores dificuldades foram relacionadas com tabelas (algumas complexas). Outra confusão inerente à procura no Google é os milhares de posts com código errado, ou dependente de packages que não fazem parte do MikteX.
    Tal como o João Lourenço explica o posicionamento de floats (figuras, tabelas e listings) também não é pacifico pois nem sempre a inteligência do Latex está correta, nomeadamente quando quer colocar uma figura já depois do inicio de nova secção ou bastante antes de a mesma ser referida no texto.
    Claro que beneficiei muito mas mesmo muito do template FCT-UNL, pois quando ia tentar perceber o código do template ou mesmo algumas alterações que fiz no template para ter listagens XSD e XML em cores, fez-me lembrar os anos 80 quando eu programava em linguagem Assembly.
    Mas em conclusão e como conselho para quem quiser iniciar a escrita de uma tese ou documento similar com alguma complexidade, não hesitem como eu, pois Latex é a solução.
    E depois ao imprimir um documento Latex os nossos olhos percebem a diferença e apetece perguntar como é possível a Microsoft já ter faturado muitos milhões, mesmo muitos milhões em versões Office para não falar na publicidade e não conseguir ter um processador de documentos com a qualidade do Latex.

    ResponderEliminar

Enviar um comentário

Mensagens populares deste blogue

Como forçar uma nova linha dentro de uma tabela?

Gráfico ou Tabela?