国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種實現(xiàn)文檔閱讀的方法及裝置的制造方法_2

      文檔序號:9631523閱讀:來源:國知局
      檔;
      [0042]要在終端上顯示接收到的文檔,首先這個文檔需存儲在終端上并且知道文檔的路徑。拿到文檔的路徑以后就可以定位并讀取出終端中的文檔。
      [0043]步驟103:解析出要閱讀的文檔中包含的內(nèi)容信息以及對應(yīng)的屬性信息;
      [0044]本發(fā)明中解析出要閱讀的文檔中包含的內(nèi)容信息以及對應(yīng)的屬性信息,包括:采用Ρ0Ι函數(shù)庫將要閱讀的文檔解析為Ρ0Ι函數(shù)庫中的對象,從解析得到的對象中取出要閱讀的文檔中包含的內(nèi)容信息以及對應(yīng)的屬性信息。
      [0045]POI (Poor Obfuscat1n Implementat1n)是 Apache 軟件基金會的開放源碼函數(shù)庫,Ρ0Ι提供API給Java程序?qū)icrosoft Office格式檔案讀和寫的功能。
      [0046]本發(fā)明中用戶之間傳遞的文檔可以是文字文檔,如word文檔。
      [0047]如圖2所示,上述采用Ρ0Ι函數(shù)庫將要閱讀的文檔解析為Ρ0Ι函數(shù)庫中的對象,從解析得到的對象中取出要閱讀的文檔中包含的內(nèi)容信息以及對應(yīng)的屬性信息,包括:采用Ρ0Ι函數(shù)庫對文字文檔進行解析得到范圍(Range)對象,由Range對象得到文字文檔的多個段落(Paragraph)對象,對每個Paragraph對象進行遍歷得到多個字符集(CharacterRun)對象,CharacterRun對象中包含文字文檔中的文字和/或圖片,以及相應(yīng)的屬性信息,從CharacterRun對象中取出文字文檔中的圖片和/或文字,以及相應(yīng)的屬性信息。
      [0048]Range對象是文檔的讀取范圍,包含Paragraph對象。
      [0049]Paragraph對象是構(gòu)成文檔的段落,包含CharacterRun對象。
      [0050]CharacterRun對象是文檔的基本結(jié)構(gòu),包含文字和/或圖像,同時也包含文字的屬性,如字體大小、字體顏色等。
      [0051]讀取出要閱讀的文檔(word文檔)后,就可以使用Apache的Ρ0Ι函數(shù)庫來解析word文檔,文檔的解析使用Ρ0Ι提供的三個基本類庫,由Ρ0Ι函數(shù)庫可以得到文檔的Range對象,由Range對象可以得到文檔的多個Paragraph對象,對每個Paragraph對象遍歷可以得到多個CharacterRun對象,而CharacterRun對象里包含了文檔的圖片、文字等信息以及文字屬性,取出這些信息可以使用這些信息構(gòu)建本地能夠識別的文檔。
      [0052]本發(fā)明中用戶之間傳遞的文檔也可以是表格文檔,如excel文檔。
      [0053]上述采用Ρ0Ι函數(shù)庫將要閱讀的文檔解析為Ρ0Ι函數(shù)庫中的對象,從解析得到的對象中取出要閱讀的文檔中包含的內(nèi)容信息以及對應(yīng)的屬性信息,包括:采用Ρ0Ι函數(shù)庫分別將表格文檔的每個表單(sheet)解析為一個HSSFSheet對象,HSSFSheet對象中包含sheet的內(nèi)容信息及相應(yīng)的屬性信息,根據(jù)HSSFSheet對象取出sheet的有效行數(shù),在HSSFSheet中對sheet的每一行進行遍歷取出每個單元格的內(nèi)容信息與相應(yīng)的屬性信息。
      [0054]在通過文件路徑定位到要閱讀的文檔(excel文檔)后,使用Ρ0Ι函數(shù)庫解析excel文檔。其中excel文檔中的每個sheet可以解析為一個HSSFSheet對象,這個對象包含了 sheet的內(nèi)容信息與屬性信息。然后根據(jù)此對象取出sheet的有效行數(shù),對每一行進行遍歷可以取出每個單元格的內(nèi)容(文字)與屬性,如文字顏色,單元格背景顏色,位置(居中,左右對齊等)和字體大小等。
      [0055]步驟104:根據(jù)對應(yīng)的屬性信息將內(nèi)容信息組裝成本地能夠顯示的文檔,并進行文檔顯示。
      [0056]本發(fā)明中根據(jù)對應(yīng)的屬性信息將內(nèi)容信息組裝成本地能夠顯示的文檔,可以是:根據(jù)對應(yīng)的屬性信息將內(nèi)容信息組裝成超文本標(biāo)記語言(Hypertext Markup Language,HTML)文檔。
      [0057]本發(fā)明中,在要閱讀的文檔為word文檔的情況下,在得到word文檔的文字和/或圖片等信息后,將解析出的文檔元素組裝成HTML,HTML為超文本標(biāo)記語言,有很強的通用性與平臺無關(guān)性,而手機中的瀏覽器或者android平臺提供的控件WebView可直接顯示HTML,這種方式有很強的通用性。
      [0058]在步驟103中得到Paragraph對象以后,對每個對象進行遍歷,得到CharacterRun對象,如果有圖片,則將圖片以字節(jié)流的形式寫入手機磁盤,向HTML文件寫入<img>標(biāo)簽,src (圖片路徑)為圖片寫入的路徑。如果是文字,使用API提供的方法得到字體屬性:
      [0059]getFontSize ()—得到字體大小;
      [0060]getColor ()—得到字體的顏色;
      [0061]isBold ()—是否是粗體;
      [0062]isltalic ()—是否是斜體;
      [0063]得到文字屬性以后,就可使用〈font〉標(biāo)簽的size (字體大小)與color (字體顏色)屬性顯示文字。
      [0064]在生成HTML文檔以后,就可以使用手機自帶的瀏覽器顯示這個HTML文檔,如APP需要自己顯示,則可用android提供的控件WebView來顯示此文檔,使用WebView的loadUrl ()方法,傳入HTML文檔的路徑即可顯示,由于WebView與瀏覽器都支持縮放的手勢操作,所以使用此方法無需開發(fā)縮放功能,節(jié)省了開發(fā)人員的時間。
      [0065]本發(fā)明中,在要閱讀的文檔為excel文檔的情況下,在取出單元格信息以后,就可以開始構(gòu)造HTML文檔了。而HTML文檔中〈table〉標(biāo)簽正好是用來顯示表格的,所以將取出的單元格信息轉(zhuǎn)成相應(yīng)的HTML標(biāo)簽屬性,其中<tr>標(biāo)簽代表行,而<td>標(biāo)簽代表表格中的每一個最小單元(對應(yīng)EXCEL中的單元格)。
      [0066]針對excel文檔的HTML文檔顯示與針對word文檔的HTML文檔顯示完全相同,傳入生成的HTML文檔的路徑,使用手機瀏覽器或者WebView顯示,縮放也由控件支持,無需開發(fā)。
      [0067]不僅如此,本發(fā)明還可以實現(xiàn)對用戶之間傳遞的PDF文檔的閱讀。
      [0068]在本地用戶選擇閱讀接收到的PDF文檔時,將TOF的每一頁解析成圖像(如bitmap)的形式來展現(xiàn)。
      [0069]bitmap在android系統(tǒng)可以獲取圖像的文件信息,可對圖像進行剪切、旋轉(zhuǎn)、縮放等操作,并可以以指定格式保存圖像文件,所以可以使用ImageVieW(安卓提供的顯示圖片的控件)控件顯示bitmap。
      [0070]在顯示對PDF文檔解析得到的bitmap時,還需要控制翻頁與頁面的縮放,可以使用GestureDetector (手勢探測器,安卓提供的API,可以用來檢測用戶的滑動手勢)來控制用戶的左滑與右滑行為,在內(nèi)存中至少保存當(dāng)前頁、前一頁與后一頁的bitmap,在用戶滑動時顯示前一頁或者后一頁。而在滑動停止后預(yù)加載前一頁與后一頁的bitmap,滑動后釋放多余的bitmap文件,這樣就達到了翻頁的功能。
      [0071]縮放對F>DF文檔解析得到的bitmap,可以使用android提供的API文件ScaleGestureDetector (縮放手勢探測器,安卓提供的API,可用來檢測用戶的縮放手勢)來實現(xiàn),由于使用ImageVIew來顯示PDF的每一頁,所以在檢測到用戶有放大或者縮小的手勢操作時,對ImageView進行相應(yīng)的縮放就可達到目的。
      [0072]如圖3所示,本發(fā)明還提供了一種實現(xiàn)文檔閱讀的裝置,包括:接收單元、讀取單元、解析單元、組裝單元和顯示單元,其中:
      [0073]接收單元,用于接收用戶之間傳遞的文檔;
      [0074]讀取單元,用于在本地用戶選擇閱讀接收到的文檔時,根據(jù)文檔的存儲路徑讀取要閱讀的文檔;
      [0075]解析單元,用于解析出要閱讀的文檔中包含的內(nèi)容信息以及對應(yīng)的屬性信息;
      當(dāng)前第2頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1