web-dev-qa-db-ja.com

多くのページを直接スキャンしてPDFに入れます

多くのページを直接PDFファイルにスキャンできるUbuntuの使いやすいプログラムはありますか?

34
pupeno

シンプルスキャンユーティリティを使用するというアイデアは、よく開発されましたシンプルスキャン-10.04からデフォルトでインストールされるスキャンツール(アプリケーション‣グラフィックス‣シンプルスキャン)。 alt text

必要な数のページをスキャンし、保存時にファイル形式としてPDFを選択するだけです。

テキスト認識などの追加機能を提供するもう少し単純なプログラムは、リポジトリにもあるgscan2pdfです。 alt text

38
Marcel Stimberg

「使いやすい」はユーザーの目にはありますが、xsaneはこの機能を提供します。ビューアーと表示されているマルチページを選択します(またはCTRL-Mを押します)。そこから理解するのはそれほど難しくないはずです。

5
Karl Bielefeldt

ファイル名をmyfile.jpgからmyfile.pdfに変更します Simple Scanの保存ダイアログで。

Ubuntu 14.04、シンプルスキャン3.12.1でテスト済み。

これは、ファイルタイプのドロップダウンに「PDF」ではなく「画像」のみが表示されていても機能します。これはUIのバグだと思います。

この機能はHelp > Contentsで文書化されています:

[名前を付けて保存]ダイアログボックスで、サポートされているファイルタイプのいずれかを選択するか、[名前]フィールドの拡張子を変更します。

次の形式がサポートされていると書かれています:

  • PDF
  • JPEG
  • PNG
  • TIFF

興味深い事実:スキャンタイプ(「スキャン」以外のドロップダウン)を「テキスト」に変更すると、デフォルトのファイルタイプはPDFになります。

私はこの質問を見て、控えめに言っても効果的であるとインターフェースが特異だと考えるまで、xsaneを使用していました。

この質問を見て、私は調べてみました gscan2pdf Ubuntu Lucid/Maverickリポジトリに住んでいます。同じスキャン(libsane)エンジンを使用しますが、UIははるかにGnomeっぽいです。良い時間のために、試してみてください:

Sudo apt-get install gscan2pdf
3
msw

USBスキャナーからページをスキャンします。 tesseractを使用してPDFにOCRします。複数のページを1つのPDFに結合します。使用法: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

XSANEを使用したい人のために。プログラムで[ヘルプ]> [XSane Doc]からリンクされたセットアップガイドを読むと、非常に強力で直感的です。どの程度できるかを知ることができます。 SANEバックエンドが適切に動作していることも確認する価値があります(Arch固有ではありません): https://wiki.archlinux.org/index.php/SANE

フィーダーからドキュメントを自動的にスキャンする場合、XSaneがいつ停止するか(そして早く停止しないか)を知っているかどうかを知りたい場合は、左上に、収まるページ数よりも大きい数(スキャン数アイコン)を入力しますあなたのフィーダーで。つまりフィーダーで10ページを使用できる場合は、15を入力します(厚さのばらつきを考慮するため)。両面スキャナーを使用している場合は、この数値を2倍にします。

フィーダーがなくなると、「スキャンされたページ:0」という緑色の警告三角形の付いたダイアログボックスが表示されます。これは、フィーダーが空であり、ダイアログを閉じることができることを意味します。 XSaneの右上にあるファイルはすべてそこにあります。ビューアからファイルを保存することを忘れないでください。今度はもう一度同じボタンを押すと、同じポイントから番号が増加するか、開始できます。 「マルチページ」を選択した場合、プロジェクトダイアログには完了したすべてのスキャンが表示され、クリックしてマルチページPDFまたはTIFFまたはPostScriptとして保存できます。

HTH、

DC

0
user901387