Geração (semi-) automática de anais

$Date: 2004/06/10 18:15:25 $

Autor: Fabricio Chalub, frosario@ic.uff.br

Este script foi inspirado nas instruções presentes na página http://www.coli.uni-sb.de/~fouvry/how-do-I.html.

Introdução

Este script usa um arquivo-mestre LaTeX para a formatação dos anais, cujo conteúdo será obtido diretamente através dos artigos enviados em formato PDF pelos autores. A idéia é separar os PDFs originais em páginas individuais e incluí-las como figuras no LaTeX final. Isto permite o ajuste do tamanho das páginas enviadas, já que muitas vezes o tamanho de página dos anais não é o mesmo do tamanho de página dos artigos (normalmente A4).

Utilize o arquivo proceedings.tex como base de partida. Ele foi utilizado na confecção dos anais do SBLP'2004.

O índice de artigos e o índice remissivo de autores serão gerados automaticamente a partir de um arquivo contendo informações sobre os artigos enviados.

Preparação dos diretórios

Antes de começar a utilizar este script, você deverá preparar a estrutura de diretórios e o banco de dados de artigos que o sistema utiliza.

Crie um arquivo chamado papers.text no diretório corrente com o seguinte formato:

ID;TÍTULO;AUTORES 
Separe os autores por vírgula e não acrescente "e" antes do último autor. Uma possível sugestão de ID é utilizar o último sobrenome de cada autor, separados por um hífen. Por exemplo:
silva-fatima;Como criar os anais de um simpósio;J. Silva, M. Fátima

A ordem dos artigos neste arquivo é relevante e será a ordem em que os artigos aparecerão nos anais.

Crie um diretório papers/ debaixo do diretório de onde você rodará este script. Dentro deste diretório crie um diretório para cada artigo enviado, utilizando como nome o ID do artigo, informado no arquivo papers.text. Coloque dentro de cada subdiretório o PDF enviado pelo autor. Deverá haver um e somente um PDF por diretório.

Seguindo o exemplo acima, e assumindo que nós estamos no diretório corrente /tmp, teríamos a seguinte estrutura de diretórios:

tmp$ find
.
./papers
./papers/silva-fatima
./papers/silva-fatima/artigo.pdf
./make-proceedings.py
./proceedings.tex
tmp$

Como a geração do conteúdo dos anais é inteiramente baseada nos originais camera-ready, é importantíssimo que o editor certifique-se que todos os artigos enviados estão exatamente com a mesma formatação de página, ou seja, todas os artigos têm o mesmo tipo de página e as mesmas margens.

Executando o script

O que o script faz é o seguinte:

Após rodar este script e fazer os ajustes finos necessários nos arquivos TeX gerados, execute a seguinte seqüência de comandos:

latex proceedings
makeindex proceedings
latex proceedings
latex proceedings
dvips -q -R -o proceedings.ps proceedings.dvi
ps2pdf proceedings.ps
dvips -q -R -o proceedings-crop.ps -t A4 -T 155mm,215mm -h crops.pro -Ppdf proceedings.dvi
ps2pdf -dPDFSETTINGS=/prepress proceedings-crop.ps
dvips -q -o proceedings-crop-mirror.ps -t A4 -T 155mm,215mm -h crops-mirror.pro -Ppdf proceedings.dvi
ps2pdf -dPDFSETTINGS=/prepress proceedings-crop-mirror.ps

Estes comandos acima supôem um tamanho de página 15,5 cm por 21,5 cm. Modifique de acordo com a sua necessidade.

Após rodar estes comandos você terá três arquivos:

Para utilizar este script você precisa necessariamente dos programas pdftk e pdftops (parte do Xpdf) presentes no $PATH, além de algum sistema TeX e um interpretador Python, claro. As versões utilizadas desses programas para gerar os anais do SBLP'2004 foram:

Python 2.3.4
TeX (Web2C 7.4.5) 3.14159, kpathsea 3.4.5
pdftk 0.94
pdftops 3.00