CentOS安裝Xpdf教學
Xpdf是Linux中可以讀取PDF檔案的開放原始碼程式,我引用一下Wikipedia的詳細介紹:
Xpdf 是一個開放原始碼的PDF檔案瀏覽器,此軟體運行於X Window以及Motif上。 Xpdf 也實際運行於所有類Unix作業系統上。Xpdf 可解碼LZW壓縮格式並閱讀加密的PDF文件。官方版本的Xpdf遵循PDF檔案的智慧財產權政策,因此可能禁止拷貝、列印或轉換的功能。當然有某些破解補丁可以忽略這些智慧財產管理限制。
Xpdf包含數項不需要X windows系統的程式,包含了解析PDF的圖檔以及將PDF轉檔成文字檔或PostScript的程式。
Xpdf也被其他PDF瀏覽程式用於前端,例如KPDF(一個運行在KDE桌面的程式)。而它的文字引擎則被許多PDF瀏覽程式運用,例如BeOS上的BePDF、RISCOS上的!PDF以及Palm OS上的PalmPDF。
Poppler以xpdf 3.0的繪圖函式庫為基礎創造出來,以便增加其再用性。許多程式(包括Xpdf自己)可使用poppler為它們的後端繪圖器。
來源:Xpdf - 維基百科,自由的百科全書,http://zh.wikipedia.org/wiki/Xpdf
Xpdf很重要的功能在於「從PDF轉成文字檔」,這可以取代DSpace原本使用PDFbox的缺點:PDFbox不支援Acrobat 9的PDF檔案。
在一篇網路上到處轉載的「JAVA抽取WORD和PDF格式文件的四种武器」當中也有介紹到Xpdf,但並沒有很詳盡的安裝方法。所以這一篇主要是來教大家怎麼在Linux,特別是在CentOS當中安裝Xpdf。
Xpdf可以利用rpm來安裝,而相依套件的部份我們則是用yum來安裝。
1. 安裝Xpdf的相依套件
請以root的身份輸入以下指令:
[root@dspace ~]# yum install -y openmotif libpaper poppler-utils xdg-utils
2. 下載Xpdf的rpm檔案並安裝
Xpdf沒有提供rpm,但我們可以在RPM pbone.net找到Xpdf的rpm安裝檔。網頁位置在這裡,其中一個載點請點此下載,另外我準備了SkyDrive備份。
確定你存放的位置之後,請以root的身份輸入以下指令:.
[root@dspace ~]# rpm -ivh xpdf-3.02-5.el5.1.i386.rpm
如果沒有錯誤訊息,表示安裝成功。
3. 安裝語系檔
請先下載以下語系檔,或是下載我在SkyDrive的語系檔備份。
- 阿拉伯文:http://rpm.pbone.net/index.php3/stat/4/idpl/1651197/com/xpdf-arabic-1.0-2.noarch.rpm.html
- 繁體中文:http://rpm.pbone.net/index.php3/stat/4/idpl/2408073/com/xpdf-chinese-traditional-2.01-8.i386.rpm.html
- 簡體中文:http://rpm.pbone.net/index.php3/stat/4/idpl/2408072/com/xpdf-chinese-simplified-2.01-8.i386.rpm.html
- 西里爾字母(一種斯拉夫語文字母):http://rpm.pbone.net/index.php3/stat/4/idpl/654920/com/xpdf-cyrillic-1.0-1.i386.rpm.html
- 希伯來文:http://rpm.pbone.net/index.php3/stat/4/idpl/1651202/com/xpdf-hebrew-1.0-4.noarch.rpm.html
- 德文:http://rpm.pbone.net/index.php3/stat/4/idpl/654882/com/xpdf-greek-1.0-1.i386.rpm.html
- 拉丁文2:http://rpm.pbone.net/index.php3/stat/4/idpl/659180/com/xpdf-latin2-1.0-3.i386.rpm.html
- 日文:http://rpm.pbone.net/index.php3/stat/4/idpl/2408074/com/xpdf-japanese-2.01-8.i386.rpm.html
- 韓文:(會相衝,rpm要搭配--force安裝)http://rpm.pbone.net/index.php3/stat/4/idpl/2408075/com/xpdf-korean-2.01-8.i386.rpm.html
- 泰文:http://rpm.pbone.net/index.php3/stat/4/idpl/654428/com/xpdf-thai-1.0-1.i386.rpm.html
- 土耳其文:http://rpm.pbone.net/index.php3/stat/4/idpl/659598/com/xpdf-turkish-1.0-1.i386.rpm.html
如果你下載我備份的壓縮檔,請依照以下指令來解壓縮並安裝。
[root@dspace ~]# unzip xpdf-language-i386.zip -d lang [root@dspace ~]# rpm –ivh lang/xpdf-*.rpm --force
4. 使用Xpdf的pdftotext來抽取PDF的文字檔
讓我們試著將一個PDF檔案中的文字抽取成txt文字檔吧。
- 請下載PDF檔案:「Chen, A Study on Knowledge Extraction from User Reading Annotation of Digital Library.pdf」(其實這是我的論文計畫書初稿XD)。
- 放到伺服器中的位置,你知道的地方即可。
- 執行pdftotext指令與檔名,如下:
- 此時應該會有同樣檔名,但是副檔名為.txt的檔案產生。結果應該跟這個檔案一樣,下圖中,左邊是PDF原稿,右邊則是抽取出來的文字檔!
[root@dspace ~]# pdftotext Chen\,\ A\ Study\ on\ Knowledge\ Extraction\ from\ User\ Reading\ Annotation\ of\ Digital\ Library.pdf
這樣就安裝完成囉。此外,上面安裝過語系檔的檔案也全都可以如法炮製地抽取出文字檔,Xpdf非常地強大!
本篇教學是為了擴增DSpace的Media-filter而鋪路,我現在正要把Xpdf跟DSpace整合,讓DSpace全文搜尋功能更為完整。
問題回報:範例檔案似乎無法轉換,請換一個範例檔案
回覆刪除