Gráficos repetidos em um documento

Um logotipo, uma “marca d’água” ou qualquer outra imagem que seja repetida em seu documento tem o potencial de tornar a versão processada do documento incontrolavelmente grande. O problema é que os mecanismos padrão de uso de gráficos adicionam a imagem em cada ponto que ela deve ser usada, de modo que, quando processado, a imagem apareça no arquivo de saída em cada um desses pontos.

Enormes arquivos PostScript são embaraçosos; explicar por que tais arquivos ficam enormes é ainda mais embaraçoso.

O epslatex tutorial de gráficos do descreve uma técnica para evitar o problema: basicamente, a imagem que deve ser repetida é convertida em uma sub-rotina PostScript que é carregada como um arquivo prólogo dvips No lugar da imagem, você carrega um arquivo (com a mesma caixa delimitadora que a imagem) contendo nada além da invocação da sub-rotina definida no prólogo.

A técnica do epslatex é complicada, mas faz o trabalho. Ainda mais complicado é o elegante esquema de converter a figura em uma fonte de contorno Adobe Type 3 de um único caractere. Embora esta técnica seja apenas para “verdadeiros experts” (o autor desta resposta nunca sequer a experimentou), ela tem potencial para o mesmo tipo de economia de espaço que a técnica do epslatex, com maior flexibilidade no uso real.

Mais prático é o graphicx-psmin de Hendri Adriaens. Você o carrega no lugar do graphicx, de modo que, em vez de

\usepackage[]{graphicx}
você vai escrever:
\usepackage[]{graphicx-psmin}
e, no começo de seu documento, você escreve:
\loadgraphics[]{}
e cada um dos gráficos na lista é convertido em um “objeto” para uso dentro da saída PostScript resultante. (Esta é, em essência, uma versão automatizada da técnica do epslatex descrita acima.)

Tendo carregado o pacote como acima, sempre que você usar \includegraphics, o comando vai verificar se o arquivo que você pediu é um dos gráficos na lista do \loadgraphics. Em caso afirmativo, a operação é convertida em uma chamada do “objeto” em vez de uma nova cópia do arquivo; o PostScript resultante poderá, obviamente, ser muito menor.

Observe que o pacote exige um dvips recente, versão 5.95b (esta versão não está — ainda — amplamente distribuída)

Se seu PostScript for destinado para conversão em PDF, seja por um mecanismo baseado em ghostscript tal como ps2pdf ou por (por exemplo) Acrobat Distiller, a questão não é tão premente, já que o mecanismo de destilação vai amalgamar objetos gráficos, quer o PostScript os tenha ou não amalgamado. O PDFTeX faz o mesmo trabalho com gráficos, convertendo automaticamente múltiplos usos em referências a objetos gráficos.

graphicx-psmin.sty
graphicx-psmin

This answer last edited: 2013-06-03


Do you have any question? Ask on: latex.net.br - we love qood questions!