web-dev-qa-db-fra.com

Numérisez de nombreuses pages directement dans un PDF

Existe-t-il un programme facile à utiliser dans Ubuntu capable de numériser de nombreuses pages directement dans un fichier PDF?

34
pupeno

L’idée d’avoir un utilitaire d’analyse simple était à l’origine du développement de, Simple Scan - l’outil d’analyse installé par défaut à partir de 10.04 (Applications ‣ Graphiques ‣ Simple Scan). alt text

Numérisez simplement autant de pages que vous le souhaitez et choisissez le format de fichier PDF lors de la sauvegarde.

Un autre programme légèrement moins simple qui offre des fonctionnalités supplémentaires telles que la reconnaissance de texte est gscan2pdf, également dans les référentiels. alt text

38
Marcel Stimberg

"Facile à utiliser" est dans l'œil de l'utilisateur, mais xsane fournit cette fonctionnalité. Choisissez plusieurs pages où il est dit spectateur (ou appuyez sur CTRL-M), et il ne devrait pas être trop difficile de comprendre à partir de là.

5
Karl Bielefeldt

Modifiez le nom du fichier de myfile.jpg à myfile.pdf dans la boîte de dialogue de sauvegarde de Simple Scan.

Testé sur Ubuntu 14.04, Simple Scan 3.12.1.

Cela fonctionne même si la liste déroulante des types de fichiers n'indique pas "PDF", mais uniquement "Images". Je considère cela comme un bug d'interface utilisateur.

Cette fonctionnalité est documentée sur Help > Contents:

Dans la boîte de dialogue "Enregistrer sous", choisissez l'un des types de fichiers pris en charge ou modifiez simplement l'extension dans le champ "Nom".

Il dit que les formats suivants sont supportés:

  • PDF
  • JPEG
  • PNG
  • TIFF

Fait intéressant: si vous modifiez le type de numérisation (liste déroulante en plus de "Numériser") en "Texte", le type de fichier par défaut devient PDF.

J'utilisais xsane jusqu'à ce que je voie cette question et considère son interface comme idiosyncratique pour le moins, mais efficace.

En voyant cette question, je suis allé chercher et j'ai trouvé gscan2pdf vivant dans les référentiels Ubuntu Lucid/Maverick. Il utilise le même moteur d'analyse (libsane) mais l'interface utilisateur est beaucoup plus gnome-ish. Pour passer un bon moment, essayez:

Sudo apt-get install gscan2pdf
3
msw

Numérisez des pages à partir d'un scanner USB. Utilisez tesseract to OCR dans un fichier PDF. Fusionner plusieurs pages en un seul PDF. Utilisation: scan2PDF outputfilename number_of_pages

#!/bin/bash
#scan2PDF
#Requires:      tesseract 3.03 for OCR to PDF
#               scanimage for scanning, I use  1.0.24
#               pdfunite to merge multiple PDF into one, I use 0.26.5
#
#       Use scanimage -L to get a list of devices.
#       e.g. device `genesys:libusb:006:003' is a Canon LiDE 210 flatbed scanner
#       then copy/paste genesys:libusb:006:003 into SCANNER below.
#       play with CONTRAST to get good images
DPI=300
TESS_LANG=nor  #Language that Tesseract uses for OCR
SCANNER=genesys:libusb:006:003  #My USB scanner
CONTRAST=35   #Contrast to remove paper look

FILENAME=$1 #Agrument 1,filename
PAGES=$2    #Argument 2, number of pages

re='^[0-9]+$'  #Check if second argument is a number
if ! [[ ${PAGES} =~ $re ]] ; then
   echo "error: Usage: $0 filename number_of_pages" >&2; exit 1
fi

SCRIPT_NAME=`basename "$0" .sh` #Directory to store temporary files
TMP_DIR=${SCRIPT_NAME}-tmp

if [ -d ${TMP_DIR} ]  #Check if it exists a directory already
then
        echo Error: The directory ${TMP_DIR} exists.
        exit 2
fi
mkdir ${TMP_DIR}  #Make and go to temp dir
cd ${TMP_DIR}

echo Starts Scanimage...
scanimage -d ${SCANNER} --format=tiff --mode Color --resolution ${DPI} -p --contrast ${CONTRAST} --batch-start=1 --batch-count=${PAGES}  --batch-Prompt


echo Starts Tesseract OCR

for file in  *.tif  #Goes through every tif file in temp dir
do
        tesseract $file  ${file%.tif} -l ${TESS_LANG} pdf

done

if [ "$PAGES" = "1" ] #How many pages
then
    cp out1.pdf ../${FILENAME}.pdf  #Only one page, just copy the PDF back
else
        for file in *.pdf  #More pages, merge the pages into one PDF and copy back
    do
            pdfuniteargs+=${file} 
            pdfuniteargs+=" "
    done
    pdfunite $pdfuniteargs ../${FILENAME}.pdf
fi
    echo ${FILENAME}.pdf done

rm *                    #Done, clean up
cd ..
rmdir ${TMP_DIR}
1
morten

Pour ceux d'entre vous qui souhaitent utiliser XSANE. Il est très puissant et intuitif une fois que vous avez lu le guide de configuration lié à Aide> XSane Doc dans le programme - pour savoir ce que vous pouvez en faire. Il vaut également la peine de vérifier que votre backend SANE fonctionne correctement (pas trop en fonction de Arch): https://wiki.archlinux.org/index.php/SANE

Si vous souhaitez numériser automatiquement des documents à partir d'un chargeur et vous demander si XSane saura quand arrêter (et non pas trop tôt), il vous suffit d'entrer un nombre en haut à gauche (icône du nombre de numérisations) plus grand que le nombre de pages qu'il contient. dans votre chargeur. C'est à dire. si votre chargeur peut prendre 10 pages, entrez 15 (pour tenir compte de la variation d'épaisseur). Si vous avez un scanner recto-verso, doublez ce nombre.

Lorsque le chargeur est épuisé, vous obtenez une boîte de dialogue avec un triangle d'avertissement vert indiquant "" Pages numérisées: 0 ". Cela signifie simplement que le chargeur est vide et que vous pouvez fermer la boîte de dialogue. Si vous avez sélectionné" visualiseur "ou" enregistrer "en haut à droite de XSane, les fichiers seront tous là. N'oubliez pas de les enregistrer dans le lecteur. Vous pouvez maintenant appuyer de nouveau sur numériser pour poursuivre là où vous l'avez laissé, avec les numéros incrémentés à partir du même point ou vous pouvez commencer. aucun nouveau projet. Aucune page vierge n'a été ajoutée. Si vous avez sélectionné "Multipage", la boîte de dialogue du projet devrait afficher toutes les numérisations terminées et vous pouvez cliquer pour enregistrer en tant que fichier multipage PDF, TIFF ou PostScript.

HTH,

DC

0
user901387