Conversione di DJVU in PDF


40

Voglio convertire un documento DJVU in un documento PDF, la separazione e la conservazione del livello di testo e le immagini , mentre anche mantenendo la struttura dal DJVU. Come posso farlo in Ubuntu?

(Userò quindi Calibre per la conversione in ePub / Mobi, quindi se ci fosse un plug-in Calibre per l'intero processo sarebbe perfetto per me!)

Nota 1: la stampa da Evince, l'esportazione da DJview o qualsiasi altra cosa utilizzando il pacchetto ddjvu , non sono soluzioni adeguate in quanto scartano il livello di testo, salvando solo le immagini.

Nota2 : L'uso di DJVULibre sembra estrarre solo il livello di testo e le immagini non vengono estratte . Allo stesso modo, la copia del testo "manualmente" perde sia la struttura del documento che le immagini.

Risposte:


38

Metodo 1

Usa semplicemente DJView ed esporta come PDF

  1. Vai a Gestore pacchetti Synaptic
  2. Installa DJview4
  3. Esegui DJview (Applicazioni - Grafica - DJView4)
  4. Apri il tuo documento .djvu
  5. : Menu - Esporta come: PDF

Metodo 2

Apri il file djvu in evince
Seleziona stampa ----> stampa su file
cambia .ps in .pdf e fai clic su stampa

Metodo 3

  1. Vai a Gestore pacchetti Synaptic
  2. Installare

    djvulibre-bin libdjvulibre21 okular-extra-backends evince libevdocument3 libevview3

  3. Vai al terminale e scrivi

     sudo apt-get install libtiff-tools
    
  4. Vai alla directory in cui è presente il file djvu. Fai clic con il tasto destro del mouse. Vai all'opzione "Apri nel terminale". Cliccaci sopra. Si aprirà un terminale.

  5. In quel terminale scrivi

    ddjvu -format=tiff file_name.djvu file_name.tiff
    tiff2pdf -j -o file_name.pdf file_name.tiff
    

Metodo 4

C'è anche un convertitore online da DjVu a PDF


@Ashu Sei sicuro che questo recupera le immagini?
hayd

Sì, i metodi 1 e 2 hanno funzionato per me. non ho provato per 3 e .4
Ashu,

@Ashu sta estraendo le immagini o semplicemente copiando l'intera pagina? (ha senso?)
hayd

Hai provato qualche metodo? provalo e vedi se funziona
Ashu

2
Non funziona (recupera le immagini o il testo).
hayd

17

Ecco un modo, che richiederebbe alcuni strumenti non così comuni:

  1. ocrodjvu
  2. pdfbeads , che ha i suoi requisiti che possono essere trovati da Google

Possiamo usare il djvu2hocrcomando (dal ocrodjvupacchetto) per estrarre il livello di testo nascosto dal file DjVu (non fa alcun OCR o simile, ma estrae solo il livello di testo con la geometria), cioè:

djvu2hocr -p 10 sample.djvu | sed 's/ocrx/ocr/g' > pg10.html

sed l'intervento corregge i nomi delle classi nell'output hOCR (che è solo un semplice file HTML)

Ora estraiamo la pagina DjVu in formato TIFF con:

ddjvu -format=tiff -page=10 sample.djvu pg10.tif

in modo che finiamo con questi file nella cartella di lavoro:

sample.djvu
pg10.html
pg10.tif

È qui che pdfbeadsentra in gioco e eseguiamo semplicemente:

pdfbeads -o pg10.pdf

quindi questo elegante programma si occupa di tutto ciò che si trova all'interno di questa cartella (file HTML e TIFF con lo stesso nome di base) e produce file PDF di output con alcuni sottoprodotti:

sample.djvu
pg10.html
pg10.tif
pg10.jbig2
pg10.pdf
pg10.sym

che è identico al file di input DjVu e ha un livello di testo all'interno:

inserisci qui la descrizione dell'immagine

Riepilogo dei commenti:

I lunghi commenti che seguono illustrano la rappresentazione di immagini più piccole dalla pagina del documento DjVu come oggetti separati, il che non è facilmente possibile perché la pagina del documento DjVu è essa stessa una singola immagine con un livello di testo opzionale, senza "informazioni" su immagini più piccole come oggetti separati. Se il documento DjVu ha immagini a colori, verranno solitamente posizionate sul livello di sfondo; in questo caso l'utente può trarre vantaggio da strumenti come ddjvu(estrarre solo il livello di sfondo) e imagemagick(ritaglio automatico) per produrre solo immagini anziché intera tela, ma non può essere automatizzato per la creazione di output PDF

Un altro approccio più sano, ma più lento è l'uso dei normali strumenti della GUI OCR. gscan2pdf(> 1.0) è suggerito come possibile candidato per PC Linux


Sono corretto nel pensare che questo non estrae i dati delle singole immagini, ma solo l'immagine dell'intera pagina?
hayd

Cosa intendi con "dati di immagine individuali" quando ti riferisci alla struttura del file DjVu?
zetah,

se è possibile ritagliare le immagini dal documento come immagini più piccole posizionate sopra il PDF (ad esempio in modo che possano esportare in HTML)
hayd

Non esiste una tale definizione nella struttura del file DjVu. L'immagine di esempio sopra nel documento DjVu originale viene "posizionata" sul livello / maschera di primo piano insieme all'immagine dei caratteri e c'è un livello di testo separato che è stato estratto come spiegato. Se il documento DjVu ha immagini a colori, queste verranno posizionate sul livello di sfondo dell'intera pagina (nel comune file DjVu composto). Mentre è comprensibile che ci si possa aspettare che le immagini nella pagina del documento DjVu siano oggetti separati che non sono - guarda la pagina del documento DjVU come singola immagine con un livello di testo opzionale, questo è fondamentalmente.
zetah,

1
@zetah - le informazioni extra che hai fornito nei commenti dovrebbero davvero essere aggiunte alla risposta perché forniscono informazioni preziose sul posizionamento delle immagini nella struttura e cosa ti aspetteresti durante l'estrazione.
Fossfreedom

4

C'è djvu2pdf ma si basa su ghostscript quindi potrebbe essere un'altra opzione di stampa. Ti suggerisco ancora di dargli un'occhiata, nel caso in cui sia più intelligente di quanto gli stia dando credito.

Non è nei repository ma è possibile scaricare un deb dal sito dei produttori: http://0x2a.at/s/projects/djvu2pdf

** Inserire qui le informazioni obbligatorie sul download / installazione di oggetti esterni ai repository **


1
Temo che djvu2pdf usi ddjvu per esportare in PDF, che esporta immagini senza testo.
hayd

4

Utilizzando DJVULibre , è possibile estrarre il livello di testo tramite il terminalcomando:

djvutxt myfile.djvu > myfile-ocr.txt o djvused myfile.djvu -e 'print-pure-txt' > myfile.txt

(entrambi fanno la stessa cosa, e sono stati trovati qui )

La formattazione richiede un certo sforzo (poiché molti simboli non vengono convertiti correttamente) e le immagini non vengono recuperate .


Questo è utile per convertire libri senza immagini in formato DJVU, ma non per documenti con immagini. Questa è la soluzione attuale per me al momento e l'unica a estrarre il testo. Un modo per preservare la formattazione e le immagini sarebbe molto preferito!
hayd


0

Il modo più semplice: usa gscan2pdf per importare il djvu, quindi esegui l'OCR con tesseract e infine salvalo come pdf. Il testo dell'OCR nel pdf potrebbe essere leggermente diverso dal djvu originale e la conversione potrebbe richiedere del tempo, ma questo metodo è un gioco da ragazzi e funziona.


1
Salve, per renderlo una risposta più utile potresti fornire qualche dettaglio in più su dove ottenere e usare gscan2pdf e tesseract.
NGRhodes,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.