Como posso desalinhar e recortar PDFs feitos a partir de páginas digitalizadas * automaticamente *? [duplicado]

12

Eu tenho vários PDFs compostos por verificações de páginas de livros. As digitalizações são feitas a partir de duas páginas de cada vez e algumas dessas digitalizações estão distorcidas, fazendo com que o texto pareça ligeiramente inclinado.

Estou procurando uma ferramenta que me permita fazer uma otimização automática, reorganizando as varreduras sem perder a legibilidade. Eu encontrei o Briss da GPL para cortar as digitalizações para ter uma proporção de página 1: 1 em vez de 2: 1, mas Eu não tenho nenhuma ferramenta para corrigir as páginas.

Eu tropecei em unpaper , outra ferramenta de código aberto que parece perfeita para o que eu quero fazer, mas essa ferramenta é somente Linux e não funciona diretamente em arquivos PDF.

Qualquer dica é apreciada.

    
por Pietro M. 04.07.2012 / 17:53

2 respostas

9

Dê uma olhada em deskew . É uma ferramenta de linha de comando. O download * zip parece incluir binários para Windows, MacOSX e Linux.

A licença é MPL (Mozilla) ou LPGL (GNU), o que você preferir.

O único inconveniente para você parece ser que ele não consome PDFs, apenas imagens PNG e TIFF (AFAICS). Isso significa que você terá que configurar um fluxo de trabalho de s.th. como:

 PDF.orig -> PNG.orig -> PNG.deskewed -> PDF.deskewed

Eu mesmo não testei (ainda), acabei de encontrar o site recentemente e o marquei.

    
por 07.07.2012 / 20:35
5

Oh, deixe-me adicionar outra resposta. Acabei de me lembrar de netpbm . Não usei isso em anos, mas acho que devo dar uma olhada ...

O netpbm é um kit de ferramentas muito poderoso para a linha de comando para manipular imagens gráficas. Ele envia quase 300 ferramentas separadas. Inclui conversores para cerca de 100 formatos gráficos.

E também tem uma ferramenta de linha de comando que pode girar imagens:

pnmrotate

E tem outra ferramenta que tenta descobrir o ângulo de imagens giradas:

pamtilt

pamtilt retorna um número flutuante de sua suposição de rotação de imagem. Portanto, a inclinação automática das imagens deve estar ao alcance. Um script de shell pode ser escrito para fazer isso. Isso exigiria etapas diferentes:

  1. Converta a página PDF em um formato de imagem adequado para netpbm com a ajuda do Ghostscript.
  2. Use pamtilt para descobrir automaticamente o ângulo de inclinação da imagem.
  3. Use pnmrotate para desvincular a imagem.
  4. Converta novamente a imagem para PDF.

Se você me fornecer acesso a uma pequena amostra de seus arquivos PDF, eu poderia tentar criar um script de shell para realizar o feito.

(Eu estou querendo saber muito que o [netpbm] não tenha uma tag aqui no superusuário + stackoverflow.)

    
por 07.07.2012 / 22:10