สแกนหลาย ๆ หน้าเป็น PDF


35

มีโปรแกรมใช้งานง่ายใน Ubuntu ที่สามารถสแกนหลาย ๆ หน้าเป็นไฟล์ PDF ได้หรือไม่?


เพิ่งสงสัยมีคุณสมบัติพิเศษที่จำเป็นสำหรับสแกนเนอร์ / เครื่องพิมพ์ที่ฉันต้องการใช้ใน Ubuntu หรือไม่?
JFW

@JFW นี่คือรายการอุปกรณ์ที่รองรับสำหรับ XSane ซึ่งเป็นแบ็คเอนด์ที่สแกนเนอร์ Ubuntu ส่วนใหญ่ใช้ เครื่องพิมพ์ / สแกนเนอร์ / เครื่องถ่ายเอกสาร HP ดูเหมือนจะเป็นตัวเลือกที่น่าเชื่อถือหากคุณกำลังมองหา
poolie

คำตอบ:


38

แนวคิดของการมียูทิลิตี้การสแกนอย่างง่ายอยู่เบื้องหลังการพัฒนา Simple Scanซึ่งเป็นเครื่องมือการสแกนที่ติดตั้งโดยค่าเริ่มต้นจาก 10.04 ไปที่ (แอปพลิเคชัน‣กราฟิก‣สแกนแบบง่าย) ข้อความแสดงแทน

เพียงสแกนหน้าเอกสารได้มากเท่าที่คุณต้องการและเลือก PDF เป็นรูปแบบไฟล์เมื่อทำการบันทึก

อีกโปรแกรมที่ใช้งานง่ายน้อยกว่าเล็กน้อยที่มีคุณสมบัติเพิ่มเติมเช่นการจดจำข้อความคือgscan2pdfรวมถึงที่เก็บ ข้อความแสดงแทน


3
+1 สำหรับ Simple Scan - เป็นเรื่องง่ายและเรียบง่าย แต่มีประสิทธิภาพมากด้วย - เหมาะอย่างยิ่งสำหรับงานที่คุณกล่าวถึง
8128

5

"ใช้งานง่าย" อยู่ในสายตาของผู้ใช้ แต่xsaneมีฟังก์ชั่นนี้ เลือกทวีคูณตามที่มันบอกว่าวิวเวอร์ (หรือกด CTRL-M) และไม่ควรยากเกินกว่าที่จะคำนวณได้


โดยส่วนตัวฉันเห็นว่า xsane ไกลจากใช้งานง่าย ...
8128

ฉันใช้ xsane ตลอดเวลานี้ มันไม่เคยเกิดขึ้นกับฉันว่าอาจมีเครื่องมือที่ดีกว่า
Amanda

3

ฉันใช้xsaneจนกระทั่งฉันเห็นคำถามนี้และพิจารณาว่าอินเทอร์เฟซที่เป็นนิสัยของมันพูดน้อย แต่มีประสิทธิภาพ

เมื่อเห็นคำถามนี้ฉันไปดูและพบgscan2pdfอาศัยอยู่ในที่เก็บ Ubuntu Lucid / Maverick มันใช้เอ็นจิ้นการสแกน (libsane) เดียวกัน แต่ UI นั้นมีความเป็น Gnome-ish มากกว่า ในช่วงเวลาที่ดีลอง:

sudo apt-get install gscan2pdf

3

เปลี่ยนชื่อไฟล์จาก myfile.jpg เป็น myfile.pdfในกล่องโต้ตอบบันทึกของ Simple Scan

ทดสอบกับ Ubuntu 14.04 Simple Scan 3.12.1

วิธีนี้ใช้ได้แม้ว่ารายการแบบหล่นลงของไฟล์จะไม่แสดง "PDF" เฉพาะ "รูปภาพ" ฉันคิดว่านี่เป็นข้อบกพร่องของ UI

คุณสมบัตินี้มีการบันทึกไว้เมื่อHelp > Contents:

จากกล่องโต้ตอบ "บันทึกเป็น" เลือกหนึ่งในประเภทไฟล์ที่รองรับหรือเพียงแค่เปลี่ยนนามสกุลในฟิลด์ "ชื่อ"

มันบอกว่ารองรับรูปแบบต่อไปนี้:

  • รูปแบบไฟล์ PDF
  • JPEG
  • PNG
  • TIFF

ข้อเท็จจริงที่น่าสนใจ: หากคุณเปลี่ยนประเภทการสแกน (ดรอปดาวน์นอกเหนือจาก "สแกน") เป็น "ข้อความ" ประเภทไฟล์เริ่มต้นจะกลายเป็น PDF


1

สแกนหน้าจากเครื่องสแกน USB ใช้ tesseract เพื่อ OCR เป็น PDF รวมหลายหน้าเป็น 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}

มันเป็นวิธีการที่ Linuxoidal มาก
rth

1

สำหรับผู้ที่ต้องการใช้ XSANE มันมีประสิทธิภาพมากและใช้งานง่ายเมื่อคุณอ่านคู่มือการตั้งค่าที่เชื่อมโยงจากวิธีใช้> XSane Doc ในโปรแกรม - เพื่อทราบว่าคุณสามารถทำกับมันได้มากแค่ไหน นอกจากนี้ยังควรตรวจสอบแบ็กเอนด์สติของคุณทำงานได้อย่างถูกต้อง (ไม่เจาะจง Arch มาก): https://wiki.archlinux.org/index.php/SANE

หากคุณต้องการสแกนเอกสารโดยอัตโนมัติจากเครื่องป้อนและสงสัยว่า XSane จะรู้เวลาที่จะหยุด (และไม่หยุดเร็วเกินไป) เพียงป้อนหมายเลขที่ด้านซ้ายบน (จำนวนไอคอนสแกน) ที่ใหญ่กว่าจำนวนหน้าที่เหมาะสม ในเครื่องป้อนของคุณ คือถ้าเครื่องป้อนของคุณสามารถใช้เวลา 10 หน้าจากนั้นป้อน 15 (เพื่อพิจารณาความหนาที่เปลี่ยนแปลง) หากคุณมีเครื่องสแกนสองด้านให้เพิ่มจำนวนนี้เป็นสองเท่า

เมื่ออุปกรณ์ป้อนกระดาษหมดคุณจะได้รับกล่องโต้ตอบที่มีรูปสามเหลี่ยมเตือนสีเขียวระบุว่า "" หน้าที่สแกน: 0 "ซึ่งหมายความว่าอุปกรณ์ป้อนข้อมูลว่างเปล่าและคุณสามารถปิดกล่องโต้ตอบได้หากคุณเลือก" ผู้ดู "หรือ" บันทึก "ที่ด้านบนขวาของ XSane จากนั้นไฟล์ทั้งหมดจะอยู่ที่นั่น - อย่าลืมบันทึกไว้จากมุมมองตอนนี้คุณสามารถกดสแกนอีกครั้งเพื่อดำเนินการต่อจากจุดที่คุณค้างไว้ด้วยตัวเลขที่เพิ่มขึ้นจากจุดเดียวกันหรือคุณสามารถเริ่ม โครงการใหม่จะไม่มีการเพิ่มหน้าว่างใด ๆ หากคุณเลือก "Multipage" กล่องโต้ตอบโครงการควรแสดงการสแกนที่เสร็จสมบูรณ์ทั้งหมดและคุณสามารถคลิกเพื่อบันทึกเป็น PDF หรือ TIFF หรือ PostScript แบบหลายหน้า

HTH,

กระแสตรง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.