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

13

Possível duplicação:
qual software gratuito posso usar para mesclar as imagens digitalizadas

Eu tenho vários PDFs compostos de digitalizações de páginas de livros. As digitalizações são feitas de duas páginas por vez e algumas dessas são inclinadas, fazendo o texto parecer levemente inclinado.

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

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

Qualquer dica é apreciada.

Pietro M.
fonte
1
@ random: Por que esta pergunta foi encerrada? Por que esse tópico deve solicitar 'debate, argumentos, pesquisas ou discussão prolongada'?!?
Kurt Pfeifle
1
"à procura de uma ferramenta" é praticamente a sondagem de serviços leva à próxima razão @kur não construtiva
aleatória
1
@ random: Esta pergunta me levou a fazer algumas pesquisas sobre o tópico, e eu achei algumas opções interessantes a serem seguidas. O mais interessante é usar o ImageMagick para isso, e parece surpreendentemente simples. Infelizmente, seu fechamento não me permite postar minha resposta.
Kurt Pfeifle
@ Random: Eu já editei a pergunta um pouco. Espero que agora seja mais compatível com seu senso de 'construtividade'.
Kurt Pfeifle
@ random: Ok, 'fechar como duplicado' é melhor aceitável para mim neste caso.
Kurt Pfeifle

Respostas:

9

Dê uma olhada no 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.

A única desvantagem para você parece ser que ele não consome PDFs, apenas imagens PNG e TIFF (AFAICS). Isso significa que você precisará configurar um fluxo de trabalho de s.th. gostar:

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

Eu ainda não testei, apenas encontrei o site recentemente e o marquei como favorito.

Kurt Pfeifle
fonte
deskewconsegui corrigir a distorção relacionada à rotação em minha execução de teste, mas infelizmente introduziu uma fina linha cinza na posição da borda da imagem original. Para me livrar da borda cinza, recortei as imagens com a -extentopção de mogrify. Eu testei apenas no OS X, talvez esse comportamento inadequado seja específico da plataforma.
Stefan Schmidt
deskewfunciona muito bem. Meu trabalho é assim: pdfimages -all <pdf> my_imagesJBIG2 -s -p -v my_images* > outputpdf.py output > deskewed.pdfSe bordas pretas (resultado da operação deskewing) incomoda, algum processamento com imagemagick pode ser necessário, como sugerido por @StefanSchmidt
Mr. Tao
5

Oh, deixe-me adicionar outra resposta. Acabei de me lembrar do netpbm . Não o uso há anos, mas acho que devo dar uma nova olhada ...

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

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

pnmrotate

E tem outra ferramenta que tenta descobrir o ângulo das imagens rotacionadas:

pamtilt

pamtiltretorna um número flutuante de sua estimativa da rotação da imagem. Portanto, a desconexão automática das imagens deve estar ao seu alcance. Um script de shell pode ser escrito para fazer isso. Exigiria etapas diferentes:

  1. Converta a página PDF em um formato de imagem compatível com netpbm com a ajuda do Ghostscript.
  2. Use pamtiltpara descobrir automaticamente o ângulo de inclinação da imagem.
  3. Use pnmrotatepara reduzir a inclinação da imagem.
  4. Reconverta a imagem em 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.


(Estou pensando muito que [netpbm] não parece ter uma tag aqui no superusuário + stackoverflow.)

Kurt Pfeifle
fonte