Comment extraire du texte d'un PDF qui n'a pas été construit avec un index ? Il n'y a que du texte, mais je ne peux pas faire de recherche ni sélectionner quoi que ce soit. J'utilise Kubuntu, et Okular n'a pas cette fonctionnalité.
Réponses
Trop de publicités?PDFBeads fonctionne bien pour moi. Ce fil " Convertir des images numérisées en un seul fichier PDF "m'a permis d'être opérationnel. Pour numériser un livre en noir et blanc, il faut.. :
- Créez une image pour chaque page du PDF ; l'un ou l'autre des exemples gs ci-dessus devrait fonctionner.
- Générer une sortie hOCR pour chaque page ; j'ai utilisé tesseract (mais notez que Cuneiform semble mieux fonctionner).
- Déplacez les images et les fichiers hOCR dans un nouveau dossier ; les noms de fichiers doivent correspondre, de sorte que file001.tif nécessite file001.html, file002.tif file002.html, etc.
-
Dans le nouveau dossier, exécutez
pdfbeads * > ../Output.pdf
Cela placera le PDF assemblé et OCRé dans le répertoire parent.
Un autre script utilisant tesseract :
#!/bin/bash
# Run OCR on a multi-page PDF file and create a txt with the
# extracted text in hidden layer. Requires tesseract, gs.
# Usage: ./pdf2ocr.sh input.pdf output.txt
set -e
input="$1"
output="$2"
tmpdir="$(mktemp -d)"
# extract images of the pages (note: resolution hard-coded)
gs -SDEVICE=tiff24nc -r300x300 -sOutputFile="$tmpdir/page-%04d.tiff" -dNOPAUSE -dBATCH -- "$input"
# OCR each page individually and convert into PDF
for page in "$tmpdir"/page-*.tiff
do
base="${page%.tiff}"
tesseract "$base.tiff" $base
done
# combine the pages into one txt
cat "$tmpdir"/page-*.txt > $output
rm -rf -- "$tmpdir"
Bibliothèque OCR Asprise fonctionne sur la plupart des versions de Linux. Il peut prendre des PDF en entrée et les restituer sous forme de PDF de recherche.
Il s'agit d'un paquet commercial. Télécharger une copie gratuite de Asprise OCR SDK pour Linux ici et l'exécuter de cette manière :
aocr.sh input.pdf pdf
Remarque : l'option "pdf" spécifie le format de sortie.
Clause de non-responsabilité : je suis un employé de la société qui fabrique le produit ci-dessus.
Essayer Apache PDFBox pour extraire le contenu textuel d'un fichier PDF. Dans le cas d'images incorporées dans des fichiers PDF, utilisez la fonction ABBYY FineReader Engine CLI pour Linux pour extraire du texte.
A partir de juin 2021 la meilleure solution OCR que j'ai trouvée est gImageReader. J'ai utilisé la version 3.2.3 du dépôt Ubuntu 18.04. Il utilise tesseract v.4.00.00aplha comme back-end.
Il semble être bien entretenu, possède une interface graphique agréable qui n'est pas surchargée, et dispose de toutes les fonctionnalités nécessaires pour des tâches relativement modestes. Je l'utilise pour reconnaître des fichiers PDF numérisés de plusieurs pages, parfois d'une qualité très modeste (<100 dpi, avec des artefacts). Il fait très bien son travail. Il s'intègre parfaitement aux dictionnaires OpenOffice/LibreOffice. Tous les fichiers de langage tesseract et script doivent être installés (cela peut être vérifié via Synaptic).