【摘要】為使用戶辦公不再受到時間、地點、工具等外界因素的約束,本文基于Android平臺對文件的瀏覽與PDF的轉換進行了研究,通過應用Apache POI、JavaMail和Android程序開發等技術,實現了對PDF、Word、Excel文件進行瀏覽、編輯、截屏并生成圖片文件,實現圖片格式轉換成PDF格式等功能。測試表明本文的應用占用手機內存量小,使用方便靈活,為手機用戶提供了一種新型移動便捷式的辦公方式。
【關鍵詞】Android平臺;文件瀏覽;PDF轉換
1.概述
隨著3G時代的到來,移動終端設備得到了高速的發展,各類智能手機操作系統應運而生。作為開放式的手機操作系統,Android憑借其友好的用戶體驗、低廉的成本和較高的開放性擁有最大的用戶群體。根據2010年5月份《商業周刊》報道:2010年第一季度,基于谷歌Android操作系統的手機銷量超過了iPhone的銷量,市場份額達到28%[1]。與此同時人們的生活和工作方式不斷地轉向移動化,尤其是辦公領域的移動化更是成為人們急需的一種新型便捷的工作方式,因此開發一款基于Android的文件瀏覽與PDF轉換軟件必將受到用戶所喜愛,方便Android用戶的工作和生活。
1.1 Android
Android是一種基于Linux的開源手機操作系統,采用了分層的架構。第一層是Linux內核,提供由操作系統內核管理的底層基礎功能;第二層是中間件層,由函數庫和Android運行時構成;第三層是應用程序框架層,提供了Android平臺基本的管理功能和組件重用機制;第四層是應用程序層,提供了一系列核心應用程序[2]。
1.2 Apache POI
Apache HTTP Server(簡稱Apache)是Apache軟件基金會的一個開放源碼的網頁服務器,可以在大多數計算機操作系統中運行,由于其多平臺和安全性被廣泛使用,是最流行的Web服務器端軟件之一,尤其對Linux的支持相當完美。POI是Apache的一個子項目,其目的是提供對基于OOXML(Microsoft Office Open XML)和OLE2(Object Linking andEmbedding)各種文檔操作的Java APIs包[3]。
1.3 JavaMail
JavaMail是Sun提供的給開發者處理電子郵件相關的編程接口,可以用來處理email的API[4]。雖然JavaMail是Sun的API之一,但它目前還沒有被加在標準的java開發工具包中(Java Development Kit),在使用前必須另外下載JavaMail文件并加入到項目中去。
2.系統設計與實現
本系統屬于移動辦公應用,基于Android 4.0及其以上平臺,目標用戶是Android手機用戶,以辦公人員、學生為主。軟件實現PDF、Word、Excel等文件的瀏覽功能;實現用郵件系統把瀏覽的文件以附件形式發送郵件;實現在文件瀏覽時的截屏功能,生成圖片文件,并實現圖片格式轉換成PDF格式功能;實現文件掃描功能,在瀏覽報紙雜志時可通過手機的照相功能將報紙內容掃描并轉換成PDF文件。
2.1 系統物理架構
本系統的物理架構如圖1所示,主要包括后臺數據庫服務器、WEB服務器、Android前端等部分。其中客戶端采用Android操作系統(4.0版本以上),服務器端采用Tomcat WEB服務器。
2.2 系統功能設計
系統功能模塊分為五大模塊,分別為:
2.2.1 本地文件
本地文件模塊提供瀏覽本地Word、Excel、PDF及TXT文件格式文件的功能,用戶可以查看本地所有文件,支持文件縮放,選擇語句,添加注釋,復制,黏貼,等文件編輯功能。
2.2.2 最近瀏覽
最近瀏覽模塊顯示用戶最近瀏覽的文件,方便下次快速進入瀏覽,用戶可以進行打開文件、刪除文件、刪除記錄及清空記錄的操作。
2.2.3 搜索文件
搜索文件模塊顯示手機SD卡上所有Word、Excel、PDF文件,同樣可以進行文件的打開與刪除,并可根據文件名進行搜索文件。
2.2.4 掃描文件
用戶掃描文件來掃描報紙雜志等文件,并將可以其轉換為PDF文件方便閱讀。
2.2.5 偏好設置
提供給用戶相應的設置,包括搜索文件設置和換膚功能、分享功能以及關于本軟件信息。
2.2.6 發送附件功能
將文本文件以附件形式發送郵件。
2.2.7 截屏功能
在文件瀏覽編輯狀態中,截取屏幕圖片,并能轉換為PDF格式文件保存在SD卡中。
2.2.8 分享功能。可分享該軟件到weibo、twiter等。
系統組織的結構圖如圖2所示。
2.3 系統主要類圖
類圖是最常用的UML圖,可以顯示出類、接口以及它們之間的靜態結構和關系。下面是在本系統在進行文件瀏覽和PDF格式轉換時的主要類圖。
2.3.1 文件解析
Word2003和Excel2003采用Apache基金會的開源項目POI解析Word2007和Excel2007采用Zip格式讀取內容。將Word轉換成Html文件;獲取Excel內容存儲到集合。對于PDF采用MuPDF開源庫來解析。
2.3.2 文件顯示
Word采用WebWiew控件以網頁的形式顯示,Excel采用動態布局的方式,設置一個Excel布局來顯示Excel內容。PDF利用MuPDF開源庫提供的相應接口顯示。
其中文件瀏覽類圖如圖3所示。
2.3.3 PDF文件格式的轉換
如圖4所示截屏功能類圖,實現了截屏功能,并可進行圖片格式到PDF格式。
4.效果圖
圖5-10是系統的部分效果圖,測試的手機是小米MI3。其中圖5為軟件主界面;圖6-7分別為PDF、Excel格式文件的瀏覽效果;圖8-10分別是將Word截圖并轉換為PDF格式文件的效果圖。
5.結束語
本文通過應用Android程序技術、Apache POI和JavaMail等技術,在Android手機平臺上針對Word、Excel等文件進行了研究,實現了文件的瀏覽編輯、截屏掃描及PDF的轉換等功能,使手機用戶不再受地點、工具等外界因素的約束進行辦公文件操作,提供了一種新型移動便捷式的工作方式。當然本系統對EXCEL和PDF文件的編輯操作方面還優待提高,需要在今后繼續進行研究。
參考文獻
[1]NPD Group.Android Shakes Up U.S.Smartphone Market[Z].2010.
[2]高煥堂.Google Android應用框架原理與程序設計36技[M].臺北:廣悅文化,2008:23-25.
[3]http://poi.apache.org/.
[4]http://www.oracle.com/technetwork/java/javamail/index.html.