43 votes

Analysé plusieurs pages directement dans un PDF

Y a-t-il un programme facile à utiliser dans Ubuntu qui peut scanner plusieurs pages directement dans un fichier PDF ?

46voto

lubos hasko Points 13669

L'idée d'avoir un utilitaire de numérisation simple était à l'origine du développement de, eh bien, Simple Scan - l'outil de numérisation installé par défaut à partir de 10.04 (Applications Graphiques Simple Scan). texte alternatif

Numérisez simplement autant de pages que vous le souhaitez et choisissez le format de fichier PDF lors de l'enregistrement.

Un autre programme légèrement moins simple qui offre des fonctionnalités supplémentaires comme la reconnaissance de texte est gscan2pdf, également disponible dans les dépôts. texte alternatif

9voto

Alex Beynenson Points 385

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

4voto

John Sibly Points 9805

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

En voyant cette question, j'ai cherché et trouvé gscan2pdf qui se trouve dans les dépôts Ubuntu Lucid/Maverick. Il utilise le même moteur de numérisation (libsane) mais son interface est beaucoup plus gnome. Pour essayer :

sudo apt-get install gscan2pdf

3voto

Changer le nom de 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 le menu déroulant du type de fichier ne montre pas "PDF", seulement "Images". Je considère cela comme un bug d'interface utilisateur.

Cette fonctionnalité est documentée dans Aide > Contenu:

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

Il est dit que les formats suivants sont pris en charge:

  • PDF
  • JPEG
  • PNG
  • TIFF

Fait intéressant : si vous changez le type de numérisation (menu déroulant à côté de "Numériser") en "Texte", le type de fichier par défaut devient PDF.

2voto

morten Points 21

Scanner des pages à partir d'un scanner USB. Utilisez tesseract pour OCR dans un PDF. Fusionnez plusieurs pages en un seul PDF. Utilisation : scan2PDF nom_du_fichier_de_sortie nombre_de_pages

#!/bin/bash
#scan2PDF
#Nécessite : tesseract 3.03 pour l'OCR en PDF
#            scanimage pour la numérisation, j'utilise 1.0.24
#            pdfunite pour fusionner plusieurs PDF en un seul, j'utilise 0.26.5
#
#       Utilisez scanimage -L pour obtenir une liste des appareils.
#       par exemple l'appareil `genesys:libusb:006:003' est un scanner plat Canon LiDE 210
#       puis copiez/collez genesys:libusb:006:003 ci-dessous, dans SCANNER.
#       jouez avec CONTRASTE pour obtenir de bonnes images
DPI=300
TESS_LANG=nor  #Langue utilisée par Tesseract pour l'OCR
SCANNER=genesys:libusb:006:003  #Mon scanner USB
CONTRASTE=35   #Contraste pour enlever l'aspect papier

NOM_DU_FICHIER=$1 #Argument 1, nom du fichier
PAGES=$2    #Argument 2, nombre de pages

re='^[0-9]+$'  #Vérifier si le deuxième argument est un nombre
if ! [[ ${PAGES} =~ $re ]] ; then
   echo "erreur : Utilisation : $0 nom_du_fichier nombre_de_pages" >&2; exit 1
fi

NOM_DU_SCRIPT=`basename "$0" .sh` #Répertoire pour stocker les fichiers temporaires
REP_TEMPORAIRE=${NOM_DU_SCRIPT}-tmp

if [ -d ${REP_TEMPORAIRE} ]  #Vérifier s'il existe déjà un répertoire
then
        echo Erreur : Le répertoire ${REP_TEMPORAIRE} existe.
        exit 2
fi
mkdir ${REP_TEMPORAIRE}  #Créer et accéder au répertoire temporaire
cd ${REP_TEMPORAIRE}

echo Démarre Scanimage...
scanimage -d ${SCANNER} --format=tiff --mode Couleur --résolution ${DPI} -p --contraste ${CONTRASTE} --batch-start=1 --batch-count=${PAGES} --batch-prompt

echo Démarre OCR Tesseract

for fichier in  *.tif  #Parcourir chaque fichier tif dans le répertoire temporaire
do
        tesseract $fichier  ${fichier%.tif} -l ${TESS_LANG} pdf

done

if [ "$PAGES" = "1" ] #Combien de pages
then
    cp out1.pdf ../${NOM_DU_FICHIER}.pdf  #Une seule page, copiez simplement le PDF
else
        for fichier in *.pdf  #Plusieurs pages, fusionnez les pages en un PDF et copiez
    do
            pdfuniteargs+=${fichier} 
            pdfuniteargs+=" "
    done
    pdfunite $pdfuniteargs ../${NOM_DU_FICHIER}.pdf
fi
    echo ${NOM_DU_FICHIER}.pdf terminé

rm *                    #Terminé, nettoyez
cd ..
rmdir ${REP_TEMPORAIRE}

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X