成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux實用教程:自動批量掃描文檔

譯文
運維 系統運維
本文將為讀者介紹如何使用眾多Liux程序包,構建一套腳本驅動的、可以定制的文檔掃描解決方案。我們將著眼于兩種可能的最終產品:每一頁都是原始頁掃描件的PDF文件,以及含有原始頁文本內容的文本文件。

【51CTO精選譯文】本文將為讀者介紹如何構建一套文檔批量掃描系統。為了實現這個目標,我們將使用眾多Linux工具。這種方法具有的優點是,這個過程可以定制,以符合你特定的需求。這為你提供了一套可處理重大任務,又能靈活定制的系統。

我們將著眼于兩種可能的最終產品:每一頁都是原始頁掃描件的PDF文件,以及含有原始頁文本內容的文本文件。文本文件的內容可以搜索,我們探討了將文本文件轉換成PDF文件的若干方法。

本教程具有模塊化特點。比如說,如果你在處理一組預先掃描的圖像,那么就可以略過頭幾個步驟,直接進入到使用光學字符識別(OCR)軟件處理圖像,或者將它們轉換成PDF文件。同樣,如果你偏愛使用圖形用戶界面(GUI)工具來處理這個過程的某些環節,也沒有什么可以阻止你。話雖如此,我們還是盡量讓這個過程的每個環節都可以編寫腳本,以便實現全面自動化。

我們通過充分使用基于命令行的工具,確保這個項目的每個階段都是可以定制、可以編寫腳本。

  • 相關資源
  • Linux機器
  • 掃描儀
  • 具體步驟

第1步:安裝SANE

你可以使用程序包管理器,安裝主要的掃描儀程序包SANE(Scanner Access Now Easy)。要是你已安裝了SANE,但是掃描儀訪問起來還是有困難,網上可能有面向該掃描儀的針對特定廠商的SANE后端工具。如果是這種情況,不妨用谷歌搜索一下。

第2步:找到掃描儀

在命令行鍵入scanimage -L命令,檢查一下SANE能否與你的掃描儀兼容。要是你的掃描儀得到支持,文本輸出就會含有設備名稱。你需要的那部分就是冒號前面的第一個元素。

第3步:掃描圖像

鍵入scanimage -d [設備名稱] > test.pnm,快速測試掃描某個對象。這會使用默認設置來掃描一頁內容。在圖形查看器中打開掃描后的文件,檢查一下。要是遇到了問題,可以添加-v選項,以便排查故障。

第4步:完善scanimage選項

如果你打算使用OCR處理文本,或者不需要顏色,那么300 DPI分辨率和黑白是兩個典型的選項。首先,這縮小了文件尺寸。scanimage -d [設備名稱] -format=tiff -mode Lineart -resolution和300 > [文件名稱]是兩個典型的選項。

第5步:創建掃描腳本

我們將使用進行掃描的命令行字符串創建第一個腳本。使用一個文本編輯器,創建一個名為scan.sh的文件。添加#!/bin/bash作為頭一行。添加你所用的掃描儀系列作為第二行。保存該文件。在命令行鍵入chmod +x scan.sh,讓這個腳本成為可執行腳本。將./scan.sh鍵入到終端,以便運行它。接下來,我們在必要的階段可以創建諸如此類的額外腳本。你可以把這些腳本合并成一個長腳本,也可以單獨調用不同的階段。

第6步:計算裁剪尺寸

用不著為這個階段的旋轉文檔而操心。你可以使用程序包管理器,安裝GIMP。在GIMP中打開掃描后文檔,從工具面板中選擇裁剪工具。讓裁剪區覆蓋文檔的有效部分,然后在裁剪對話框中記下裁剪尺寸。如果你打算把迎面頁分割成不同頁面,就要記下適當的頁面尺寸。別在GIMP中進行裁剪,因為我們稍后會從命令行來進行裁剪。

第7步:安裝ImageMagick

使用程序包管理器,將ImageMagick安裝到你的系統上。我們使用convert命令,與這個圖像處理器工具進行交互。我們可以用它來旋轉和裁剪圖像,還可以用它來分割頁面。要注意:convert在選項前面使用了單破折號。

第8步:裁剪頁面

利用通過使用GIMP獲得的相關參數,執行裁剪任務。鍵入convert [圖像名稱] +repage -crop [x width]x[y width]+[x offset]+y[offset] [輸出名稱]。比如說,convert page1.png +repage -crop 2244×3113+1+1 page1_crop.png就會裁剪從上邊和左邊1個像素開始、尺寸為2244 x 3113的矩形頁面。

第9步:旋轉頁面

如果你不得不雙面掃描頁面,不妨使用ImageMagick來旋轉頁面。convert [輸入名稱] -rotate 90 [輸出名稱]可以完成這項任務。

第10步:分割迎面頁

與之前一樣,使用GIMP的裁剪功能,算出裁剪頁面的確切尺寸。convert page1.tiff +repage -crop 2233×1579+0+1529 page1_a.tiff以及隨后的convert page1.tiff +repage -crop 2233×1546+0+0 page1_b.tiff,可以從兩個迎面頁創建兩個不同的文件。

第11步:創建預先處理的腳本

上面是一個示例的預先處理腳本。它創建了一個名為splits的目錄,然后旋轉每個掃描件,之后將其分割成按順序編號的兩個頁面。最后,它刪除經過旋轉的文件。保存它,然后鍵入chmod +x命令,讓它成為可執行腳本。

第12步:掃描儀批處理模式

使用針對多個頁面的-batch系列選項。要是你沒有送紙器,那就添加-batch-prompt選項,以便每次掃描之間加以提示。此外,可以添加-batch=./$page_%03d.tiff,提供以"page"開頭、以帶三個0的數字結尾的文件名稱。

第13步:在掃描儀中預先裁剪

你也許能夠在掃描儀中裁剪頁面,這可以帶來更小的文件和更快的操作,因為掃描頭沒必要掃過很遠的距離。使用GIMP中的裁剪工具,在對話框中將單位由px(像素)改成mm(毫米),算出你所需要的尺寸和偏移量。要是結果證明以這種方式獲得的信息不準確,不妨考慮改用原始的辦法,使用直尺。在scanimage命令行上,額外標志的格式是-l [左邊] -x [寬度] -t [上邊] -y [高度].

第14步:雙面文檔

如果你要掃描雙面文檔,使用之前所說的batch選項,但要添加-batch-double選項,以便將頁面數遞增2個。在第二次掃描時,針對另一面,再次進行同一番操作,不過添加-batch-start=2,讓編號遞增。

第15步:將掃描件轉換成PDF

你可以使用ImageMagick,將裝滿掃描后圖像的目錄轉換成PDF"書冊"。convert *.tiff output.pdf這個命令會創建一個多頁文檔。如果你需要插入標題頁,將其命名為page000.tiff,然后放到該目錄中。

第16步:借助Tesseract,使用OCR處理文本

不妨在測試頁上試一下OCR引擎。為此,鍵入tesseract [輸入文件名稱] [輸出文件]。別給輸出文件名稱添加文件擴展名,因為文件擴展名會由Tesseract來添加。請注意:Tesseract可以檢測出多列文本和迎面頁。

第17步:OCR批處理

使用下列Bash代碼,使用OCR處理裝滿掃描后頁面的目錄:for i in *.tiff ; do tesseract $i outtext$i; done;最終結果是一組文本文件。使用cat *.txt >[輸出文本文件],將這些文件結合起來。

第18步:文本格式化

默認情況下,Tesseract會將回車符插入到之前源文本中出現的同一個位置。你可以使用下面這個命令:fmt -u [輸入文件] > [輸出文件],重新為文本文件制作格式。

第19步:在LibreOffice中編輯文本

只要將從前幾個步驟所得的輸出結果剪貼到LibreOffice Writer中。在這個階段,你可以控制編輯,并手動編輯節頭等參數。你甚至可以插入來自原文檔的圖像。

第20步:從LibreOffice導出PDF文件

LibreOffice有一些內置工具,可用于創建PDF文件。如果你最終敲定了布局和格式,就進入到File(文件)>Export as PDF(導出為PDF文件)。由此處,點擊Export(導出),為文檔取個名稱。

第21步:可以編寫腳本的PDF創建

使用程序包管理器,安裝iconv、ps2pdf和enscript這幾個程序包。鍵入iconv -f UTF-8 -t ISO-8859-1 -c [輸入文本文件][輸出文本文件],準備好文本文件。鍵入enscript [文本文件] -p [輸出postscript文件.ps]。鍵入ps2pdf [.ps文件],將PostScript轉換成PDF。

原文鏈接:http://www.linuxuser.co.uk/tutorials/automatic-mass-scanning-of-documents-tutorial

責任編輯:黃丹 來源: 51CTO.com
相關推薦

2014-04-24 10:44:43

Android搖晃刷新

2025-04-27 08:01:25

2009-07-03 16:45:25

JSP實用教程

2012-11-14 13:53:11

nginxWeb服務器LEMP系統

2009-12-01 14:14:35

路由器配置

2016-08-01 13:03:39

2014-02-27 10:27:46

PC遠程維護

2009-10-23 15:18:54

VB.NET實用教程

2009-02-27 11:01:46

LinuxNoStaples掃描文檔

2011-08-08 10:10:21

Linux備份

2016-08-08 10:11:00

網絡安全技術周刊

2009-10-23 15:35:42

VB.NET實用教程

2012-06-28 11:31:32

中晶掃描儀

2016-12-27 09:59:46

GUILinux磁盤掃描工具

2020-12-29 11:04:57

Linux安裝系統RedHat

2009-07-03 13:49:23

Servlet API

2010-11-25 13:45:44

2010-05-24 15:41:47

SVN配置教程

2009-05-04 08:43:39

谷歌圖書掃描機專利

2011-04-20 15:40:17

惠普掃描儀
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕一区二区三 | 精品国产区 | 99综合在线 | 国产精品欧美一区二区三区不卡 | 久久精品国产精品青草 | 色性av | 精久久久 | 亚洲一区免费视频 | 青青艹在线视频 | 国产日韩免费观看 | 美女视频一区二区三区 | 亚洲福利在线观看 | 国产精品无码专区在线观看 | 欧美一级片黄色 | 午夜资源| 亚洲精品久久视频 | 精久久| 99精品99 | 欧美激情国产日韩精品一区18 | 美女在线一区二区 | 波多野结衣av中文字幕 | 日韩中文字幕一区二区 | 九一在线 | 欧美视频二区 | 瑞克和莫蒂第五季在线观看 | 亚洲成人精品国产 | 成人精品久久日伦片大全免费 | 久久国产欧美日韩精品 | 99免费看| 免费国产精品久久久久久 | 欧美一级欧美一级在线播放 | 日韩视频在线观看一区二区 | 日批日韩在线观看 | 欧美黄在线观看 | 天天看天天操 | 精品国产乱码久久久久久丨区2区 | av电影一区二区 | 中文字幕在线电影观看 | 国产剧情久久 | 国内自拍偷拍 | 精品99久久久久久 |