pdfbeads só produzirá uma única página

2

Siga as instruções de esta página

Eu pego um documento de djvu, confiro se há algum sinal de corrupção abrindo-o no djvulibre e ele verifica bem. Copie-o para minha pasta de teste e renomeie-o

Executar

djvu2hocr test.djvu | sed 's/ocrx/ocr/g' > test.html

ddjvu -format=tiff test.djvu test.tif

Continue para abrir o tif com o evince e verifique se todas as páginas estão visíveis.

Execute o pdfbeads

pdfbeads -o test.pdf

e obtenha o seguinte erro:

/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in 'require': iconv will be deprecated in the future, use String#encode instead. Prepared data for processing test.tif Warning: test.tif contains multiple images, but only the first one is going to be used JBIG2 compression complete. pages:1 symbols:2080 log2:12 Processed test.tif

O PDF abre bem, mas é apenas uma única página e o OCR funciona.

Aqui está um link para os arquivos copiados / gerados

Alguma sugestão?

    
por user140393 29.03.2013 / 11:17

2 respostas

1

O pdfbeads espera um arquivo TIFF de página única e um arquivo hOCR html de página única para cada página no documento. Se puder encontrar apenas um arquivo TIFF, ele só produzirá uma página.

Divida o arquivo TIFF com tiffsplit . hocrsplit de hocr-tools podem dividir seu html. Nunca precisei usá-lo sozinho.

Eu não me preocuparia com o aviso iconv. Ruby sempre faz isso com pdfbeads. Razão aqui: aviso de depreciação iconv com Ruby 1.9.3 - Stack Overflow

    
por scruss 12.07.2013 / 23:11
1

Eu não consigo mais lembrar se eu escrevi a seguinte modificação nas instruções que você postou acima, ou se eu as encontrei em outro lugar (embora uma pesquisa no Google não dê resultados relevantes), o seguinte é o que eu tenho usado por muitos meses agora para converter arquivos djvu inteiros em formato pdf.

f='file.djvu'
pg=$(djvused -e 'n' $f)
for i in $(seq 1 $pg)
do
    djvu2hocr -p $i $f | sed 's/ocrx/ocr/g' > 'printf "pg%04d.html" $i'
    ddjvu -format=tiff -page=$i $f 'printf "pg%04d.tiff" $i'
done
pdfbeads -o ${f/djvu/pdf};

Isso cria um tiff separado (e arquivo html correspondente) para cada página e, em seguida, mescla tudo usando pdfbeads. Observe que, se por algum motivo o seu djvu tiver mais de 9999 páginas, será necessário alterar as instâncias de% 04 para algo maior, como% 05.

    
por plin25 02.02.2015 / 00:09