[SP-pm] Split de PDF

Blabos de Blebe blabos at gmail.com
Mon Sep 22 21:36:46 PDT 2014


Pessoas,

Eu estou com um PDF periódico (a cada x tempos eu tenho uma novo pdf), de
umas 400 páginas, e preciso separá-lo em vários documentos.

Existem umas páginas que tem um texto que serve de marcador tipo,
'FIM_DESTA_PARTE' e eu posso usá-las como separador.

O problema dessa bagaça é que o PDF é mal formado, e isso é uma premissa,
não um pressuposto, certo maluco?

Ele é assim, eu não tenho controle sobre isso e fim de papo.

Ao tentar abrir com o CAM::PDF eu recebo o seguinte erro:

substr outside of string at
/home/blabos/workspace/pdf/local/lib/perl5/CAM/PDF.pm line 575.
Use of uninitialized value in string eq at
/home/blabos/workspace/pdf/local/lib/perl5/CAM/PDF.pm line 575.
substr outside of string at
/home/blabos/workspace/pdf/local/lib/perl5/CAM/PDF.pm line 717.
Use of uninitialized value $content[0] in join or string at
/home/blabos/workspace/pdf/local/lib/perl5/CAM/PDF.pm line 728.
Expected object open tag
0 (empty)

Ao tentar abrir com o PDF::API2 eu recebo o seguinte erro:

Malformed xref in PDF file  at
/home/blabos/workspace/pdf/local/lib/perl5/PDF/API2/Basic/PDF/File.pm line
1051.

***

Por fim, consegui fazer o que eu queria combinando o programa pdfgrep (que
usa uma lib chamada poppler) com o módulo PDF::Extract.

Só que basicamente a minha solução foi um "shell script com esteróides" e
eu não estou lá muito confiante que isso vá funcionar com os próximos PDFs
que eu vou receber.

Gostaria de saber se vocês tem alguma dica de como tornar isso mais
robusto, sem ter que escrever código em C ou C++.

Confesso que até estou pensando em usar a poppler, pois com ela não só o
arquivo zuado abre como eu consigo acesso a todo o conteúdo textual.

O binding que tem no CPAN (https://metacpan.org/pod/Poppler) também não me
deixou muito animado não.

Alguma ideia?

[]'s
-------------- Pr�xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20140923/8b141b1b/attachment.html>


More information about the SaoPaulo-pm mailing list