Aí vieram até o "cara da informática", eu no caso, com algumas folhas na mão e pediram:
- Bota essas folhas no scanner e transforma em texto para gente por favor? #partiu !
A impressora aqui no trabalho não faz essa mágica. Então lá fui eu atrás de software...
A palavra chave aqui é OCR:
Optical Character Recognition!
OCR é a tecnologia para reconhecimento de caracteres. Como numa imagem não podemos simplesmente copiar e colar o texto, utilizamos programas que implementam essa tecnologia a fim de extrair esses caracteres.
Os procedimentos a seguir foram executados no Ubuntu 13.04.
Primeiramente eu baixei um programa de OCR, o Tesseract, e junto, seu pacote para reconhecer caracteres em português:
- sudo apt-get install tesseract-ocr tesseract-ocr-por imagemagick
Notem que também será feita a instalação do Image Magick, isso porque irei utilizá-lo num script para automatizar o processo. Image Magick é um incrível editor/conversor de imagem através de linha de comando. Se um dia precisarem escrever um script para editar/converter imagem, busquem mais por esse software, recomendo!
Se você passou uma só folha no scanner e ainda salvou em imagem, simplesmente faça:
- tesseract minhaImagem.jpg novoArquivoTexto
Mas se você colocou no scanner várias folhas e ainda transformou em PDF, meu caso, vamos fazer um script para automatizar sua conversão:
#!/bin/sh
STARTPAGE=1 # Digite aqui o número da primeira página a ser lida
ENDPAGE=3 # Digite aqui o número da última página a ser lida
SOURCE=meuarquivo.pdf # Nome do PDF original
OUTPUT=meuarquivo.txt # Nome do arquivo de saída. O resultado é dado em texto simples.
RESOLUTION=300 # Digite aqui qual a resolução que o documento foi scaneado
touch $OUTPUT
for i in `seq $STARTPAGE $ENDPAGE`; do
convert -density $RESOLUTION $SOURCE\[$(($i - 1 ))\] page.jpg
echo processing page $i
tesseract -l por page.jpg tempoutput
cat tempoutput.txt >> $OUTPUT
done
Salve esse bloco num arquivo de texto, sugestão, converterPDF2TXT.sh
Altere os primeiros parâmetro que estão comentados com as informações do seu arquivo de entrada e saída. Depois altere as permissões do arquivo para execução e então é só rodar!
- chmod 775 converterPDF2TXT.sh
- ./converterPDF2TXT.sh
O interessante é scannear utilizando uma resolução alta, por exemplo, 300dpi.
Há uma maneira de fazer tudo isso graficamente, sem precisar do script shell. Instale o
gscan2pdf, ele fará interface para o Tesseract. Porém, não tive sucesso, esse programa não enxergou o Tesseract, então não converteu (problema em pc's 64bits). Fica a dica para quem quiser testar.
Té + gente !