Questo articolo introduce 2 strumenti per convertire documenti PDF in testo modificabile su Linux utilizzando uno strumento grafico (calibre) e uno strumento da riga di comando (pdftotext).
Vale la pena notare che i due strumenti citati in questo articolo per l'estrazione di testo da file PDF non possono estrarre il testo se il PDF è composto da immagini (es. pagine/immagini di libri scansionate).
Converti PDF in testo con Calibre (GUI)
calibre è una suite di software per e-book gratuito e open source. Supporta l'organizzazione, la visualizzazione, la modifica e la conversione di e-book e supporta un'ampia varietà di formati. L'applicazione funziona su Linux, macOS e Microsoft Windows.
Calibre dovrebbe essere disponibile nei repository della tua distribuzione Linux e dovresti essere in grado di installarlo utilizzando qualsiasi negozio di software che hai sul tuo sistema. Ad esempio, per installarlo su Debian, Ubuntu, Linux Mint, Fedora, openSUSE o Arch Linux usa:
- Debian, Ubuntu o Linux Mint:
sudo apt install calibre
- Fedora:
sudo dnf install calibre
- openSUSE:
sudo zypper install calibre
- Arch Linux:
sudo pacman -S calibre
Calibre può essere installato anche su Linux utilizzando il pacchetto Flathub (richiede la configurazione di Flathub / Flatpak su alcune distribuzioni Linux).
C'è un altro modo per installare Calibre su Linux che è spiegato nella pagina di download dell'applicazione dove puoi trovare anche i binari di macOS e Windows.
Correlati:come convertire PDF in immagini (PNG, JPEG) utilizzando GIMP o pdftoppm Command Line Tool
Dopo aver installato calibre sul tuo sistema, avvialo e fai clic su Add books
per aggiungere il PDF (o più PDF:calibre supporta la conversione batch di più file PDF in testo) che desideri convertire in testo.
Dall'elenco dei libri, seleziona il PDF (o più PDF per la conversione batch in .txt) che desideri convertire in testo e fai clic su Convert books
Pulsante. Nell'angolo in alto a destra della finestra di conversione, seleziona TXT As Output format
:
Ci sono molte opzioni che puoi modificare in questa finestra di dialogo di conversione. Ad esempio, puoi rimuovere automaticamente lo spazio tra i paragrafi o inserire una riga vuota tra i paragrafi (Look & Feel -> Layout
). Puoi anche impostare la codifica dei caratteri e lo stile di fine riga (Sistema, Unix, Windows, old_mac) e persino formattarlo su Markdown.
Al termine della configurazione, fai clic su OK
Pulsante per avviare la conversione del file PDF in testo. Il file .txt convertito si trova nella directory in cui hai specificato la posizione della libreria calibre (e quindi in AuthorName/BookName
sottocartelle; se non è possibile determinare l'autore o il nome del libro, la sottocartella si chiama "Sconosciuto").
Ciò che manca a Calibre in questo caso è un modo per convertire solo una pagina o un intervallo di pagine:attualmente può convertire solo interi file PDF in testo.
Correlati PDF:come creare moduli PDF compilabili utilizzando LibreOffice Writer
Convertire PDF in testo con pdftotext (riga di comando)
pdftotext è un'utilità della riga di comando che converte i file PDF in testo normale. Offre molte opzioni, inclusa la possibilità di specificare l'intervallo di pagine da convertire, preservare il layout fisico originale del testo nel miglior modo possibile, impostare le terminazioni di riga (Unix, DOS o Mac) e persino lavorare con file PDF protetti da password.
pdftotext fa parte del pacchetto poppler / poppler-utils / poppler-tools (a seconda della distribuzione Linux utilizzata). Installa questo pacchetto come segue:
- Debian, Ubuntu, Linux Mint e altre distribuzioni Linux basate su Debian/Ubuntu:
sudo apt install poppler-utils
- Fedora:
sudo dnf install poppler-utils
- openSUSE:
sudo zypper install poppler-tools
- Arch Linux:
sudo pacman -S poppler
In altre distribuzioni Linux, usa il tuo gestore di pacchetti per installare il pacchetto poppler/poppler-utils.
Ora che il pacchetto è installato, puoi Convertire un file PDF in testo normale e mantenerne lo stesso layout (Consiglio di utilizzare questo -layout
Opzione per mantenere il layout fisico originale, ma puoi provare senza) con:
pdftotext -layout input.pdf output.txt
Devi sostituire input.pdf
con il nome del file PDF e output.txt
con il nome con cui si vuole richiamare il file TXT generato. Se necessario, aggiungi i percorsi davanti ai nomi dei file (ad es. ~/Documents/mypdf.pdf
). Se non viene specificato alcun file di testo di output, pdftotext nomina il file con lo stesso nome file del file PDF originale.
L'opzione layout mantiene il layout PDF durante la conversione in testo, anche in casi PDF con più colonne.
E se volessi convertire solo un intervallo di pagine del PDF in testo anziché l'intero PDF? Usa -f
(prima pagina da convertire) e -l
(ultima pagina da convertire) seguito dal numero di pagina, come segue:
pdftotext -layout -f M -l N input.pdf
Sostituisci M
e N
con il numero della prima e dell'ultima pagina da estrarre e input.pdf
con il nome del file PDF.
Vorresti usare i caratteri di fine riga per Mac, DOS o Unix? Puoi farlo anche con. indica -eol
seguito da mac
, dos
o unix
. Per esempio. per le terminazioni di riga Unix:
pdftotext -layout -eol unix input.pdf
Se non vuoi inserire interruzioni di pagina tra le pagine, aggiungi un -nopgbrk
:
pdftotext -layout nopgbrk input.pdf
Vuoi convertire in batch tutti i file PDF in una cartella in file di testo? pdftotext non supporta la conversione batch da PDF a testo (e pdftotext *.pdf
non funziona), ma puoi convertire tutti i file PDF in una cartella in file di testo usando un ciclo Bash FOR:
for file in *.pdf; do pdftotext -layout "$file"; done
Per ulteriori opzioni, esegui man pdftotext
e pdftotext --help
.
Ti potrebbe piacere:scarica Master PDF Editor 4 per Linux (versione gratuita)