專利名稱:可編程虛擬圖書系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及提供快速訪問和閱讀獨立設備以及互聯(lián)網上的電子內容的軟件系統(tǒng)。本發(fā)明尤其提供了用于易于導航電子內容的、虛擬的類似圖書的界面。這有利于以這樣的方式瀏覽電子內容,使得允許快速閱讀所提供的內容和內容的組織結構,以及允許快速訪問相關內容中的條目。虛擬圖書系統(tǒng)可以通過應用編程接口進行編程。虛擬圖書界面顯示模式的設定、控制虛擬圖書顯示的改變、虛擬圖書界面內的內容和來自虛擬圖書系統(tǒng)外部的程序和數據之間的交互,以及其他被應用到界面和虛擬圖書系統(tǒng)其它部分的期望的靜態(tài)和動態(tài)的效果都能夠通過這個可編程系統(tǒng)被靈活實現。
背景技術:
目前,閱讀存儲在計算機中的文檔的方法是通過計算機的監(jiān)視屏。對于那些比能夠被包含在一個屏幕內的文檔更長/更大的文檔來說,提供了將文檔向上/向下滾屏或跳轉到文檔中特定點的方法(例如通過“鼠標”和顯示在屏幕上的文檔邊緣的滾動條的聯(lián)合使用或者通過超文本鏈接的使用)。
然而,與圖書相比,大多數人并不認為這是閱讀文檔的特別方便的方法。這個看法的正確性在這樣的事實里被證明盡管計算機已經被越來越多的使用,但是紙張的使用不僅沒有任何相應的減少,反而需要更多的紙張數量上來打印那些方便地存儲在看似容易且靈活地進行閱讀操作的計算機中的內容。有時候,相關信息的打印版本是必須的,比如在一頁紙上打印照片以粘貼到某種表面(例如墻)上的情況下,或是在擁有用于在幾乎任何可能的情形和位置下閱讀的相對輕的、硬質的平裝書的便利情況下,但有時讀者非常樂意坐在辦公桌前在桌上計算機前或是遠離辦公桌操作筆記本型計算機,然而讀者仍然更喜歡手持式的文檔打印版本。這在瀏覽手冊-包括軟件手冊-以理解如何操作設備或軟件應用程序的情況中尤為正確。具有諷刺意味的是,計算機軟件包通常都帶有包含能夠被方便地存儲在輕質CD-ROM上的信息的厚重手冊,并且即使有時手冊是以CD-ROM形式分發(fā)的,但為了便于閱讀人們更經常地把它們打印成硬拷貝格式。
人與圖書中的打印資料的交互所涉及的是復雜而精細的過程。起初,圖書中的資料是以具有頁與頁之間資料連貫性的連續(xù)順序被呈現的,并且由于資料中的觀點以某種概念層次彼此相關,因此呈現的資料也具有層次結構(當資料被組織為章、節(jié)、段等的時候)。人的感知系統(tǒng)都以連續(xù)的方式輸入數據。因此,在圖書從頭到尾以連續(xù)方式被閱讀之后,接著大腦在閱讀相關資料之后重建概念層次。然而,人們經常不是從頭到尾地讀一本圖書(或輸入相關的資料),因為(a)他想要獲得所提供的資料的概觀;(b)他/她在搜索他/她所感興趣的東西;或(c)他只對閱讀圖書中的部分內容感興趣(比方說,在閱讀手冊以理解如何操作某物的情況下)。在這些情況下,人們?yōu)g覽主題圖書從而找到讀者唯一感興趣的資料。
在瀏覽過程中要完成兩件基本的事情。第一,瀏覽者快速了解圖書文獻的內容是什么。第二,瀏覽者了解感興趣的條目大概在何處,從而瀏覽者能夠(a)在此后需要的時候返回以尋找他們,以及(b)理解當前被閱讀的資料與其他資料之間的關系(即理解相關的層次結構)。當瀏覽圖書文檔的時候,為了快速翻閱,瀏覽者需要很多的手指操作并且,這些操作連同頁面的內在連續(xù)順序一起,很快使得瀏覽者具有對相關資料的種類、位置和組織結構的理解。
在瀏覽圖書的過程中,人們能夠執(zhí)行下列操作(a)根據他希望閱讀書中資料的詳細程度,以不同的速度快速翻閱;(b)跳轉到感興趣條目的大概位置;(c)很快改變翻頁的方向(向前或向后),因為(i)他想要比較和對照不同頁面上的資料,(ii)在跳轉到某些感興趣條目的大概位置之后,他想要尋找它們的準確位置,或者(iii)他不能確定感興趣條目的所在并且在尋找感興趣條目的過程中;以及(d)為他可能希望在稍后返回的某些感興趣的頁面的位置做標記。
所有這些操作通過手指與翻動的頁之間的交互來很快地執(zhí)行,并且具有最少的不必要的手指和手部動作。有趣的是,具有軟的且易彎曲頁面的圖書/雜志較難處理,因為瀏覽它需要更多的手指和手部動作,而具有硬質頁面的圖書幾乎不需要手部動作就能夠被瀏覽。
在當前可用的、瀏覽存儲在計算機中的文檔的方法中,例如鼠標與計算機屏幕上的滾動條和按鈕的聯(lián)合使用,為實現上述的各種操作必需有更多的手部動作。手部或手指的精細控制(依賴于鼠標使用手部動作來移動屏幕上的指針還是類似在軌跡球(track ball)的情況中那樣使用手指動作)是把屏幕上的指針定位到所需的位置所必需的。這個過程既冗長又笨拙。過程的冗長性使得人們?yōu)榱私l目之間的關系而記住剛剛遇到的條目的短期記憶能力承受了重負,而且過程的笨拙性給短期記憶過程造成分心和干擾,感官心理上的公知影響。
由于圖書中的資料被組織成頁面,這也提高了讀者更好地記住相關資料不同部分的位置的能力。同樣地,與文字處理器中通常所做的在屏幕上滾動文檔的過程-其中內容變得模糊且不能閱讀-不同,當人們通過翻頁來瀏覽圖書中的資料時,如果他不閱讀細節(jié),他仍然能夠至少讀到大概內容。正是由于這樣的特點使得瀏覽圖書的人能夠獲得對圖書內容、特定條目的位置以及資料的組織結構的良好的理解。
正是由于上述的原因,人們仍然寧愿閱讀他們手中的圖書,而不是閱讀采用當前的可用方法顯示在計算機屏幕上的文檔映像。
美國專利No.5,467,102(Kuno等)公開了一種包括兩個顯示屏的文檔閱讀設備。使用兩個顯示屏的目的之一在于允許用戶顯示來自文檔的兩個不同頁面,從而這兩個頁面能被同時閱讀(例如附圖和它的文字說明)。另一個目的是允許大的圖片被同時顯示在這兩個頁面上。Kuno等的設備允許用戶通過壓力傳感器改變?yōu)g覽文檔的速度——施加的壓力越大,文檔中頁面被瀏覽的速度就越快。Kuno等的設備也允許通過分別按下前向傳感器區(qū)和后向傳感器區(qū)來向前或向后閱讀文檔。人們也能夠通過按下屏幕上顯示的按鈕來選擇要跳轉的頁面。然而Kuno等的設備仍然沒有提供與瀏覽圖書一樣的便利,主要是因為當在不同控制操作-瀏覽文檔的速度、閱讀方向的改變以及跳轉到文檔的不同部分-之間進行切換時,手部和手指動作比在操作物理圖書的情況下的更多。
在美國專利No.5,417,575(1995)中,McTaggart公開了一種包括以圖書的形式裝訂在一起的層狀頁的電子圖書。在每一個層狀頁上,被打印的資料被安排在頂層并且在這個層下面的是包含薄發(fā)光二極管(LED’s)和固定在背板上的壓力傳感開關的電子背景。為了高亮顯示被打印的資料的部分內容,發(fā)光二極管產生通過頂層能夠看見的視覺信號。位于被打印的資料中某些條目下方的壓力開關是為了感測用戶對這些條目的選擇。揚聲器也被提供在圖書上,以產生用于解釋文本或給用戶提供聲音反饋的聲音信號。接觸開關或光敏開關也被嵌入到頁面中以允許電路知道當前是哪一頁在被閱讀,使得能夠產生適當的聲音和視覺信號。盡管這種裝置具有的形式允許人以如同對待典型圖書那樣來對待它,并且具有被打印資料的視覺和聲音增強以及接收用戶反饋的設備,但它基本上是不可重新編程的硬連接(hard-wired)設備并且對具有不同內容的圖書必須配置不同的硬件。沒有任何的預留措施可用于從計算機中下載文檔文件以在電子圖書上顯示,這種電子圖書也不能夠顯示任意的文檔文件。因此這種設備不適合瀏覽存儲在計算機中的文檔。
美國專利No.5,909,207(Ho)公開了一種基于計算機的系統(tǒng),這種系統(tǒng)允許用戶閱讀和操作電子虛擬圖書形式的文檔,這種電子虛擬圖書用于處理上述的、瀏覽電子介質內信息中的問題。這種虛擬圖書系統(tǒng)非常接近地模擬了紙質圖書并且有兩個主要的部分。其中一個是紙質圖書在計算機屏幕上的表示,具有現實的翻頁和厚度表示。另一個是瀏覽設備的使用,這些設備允許1)翻動方向的快速改變;2)翻動速度的快速改變;3)選擇并跳轉到任意期望的頁面;以及4)給頁面加上書簽。這些瀏覽設備允許人們用手指以和紙質圖書的情況非常相似的方式來操作圖書中的頁面。因此,頁面的虛擬操作和屏幕上的圖書圖像一起組成了虛擬圖書系統(tǒng)。這種虛擬圖書系統(tǒng)對當前用于信息瀏覽的電子工具作了非常顯著的改進,使得瀏覽信息的方便性能夠接近用紙質圖書所獲得的方便性。這就允許用戶能夠很快地瀏覽大量的信息頁面(可能是成千上萬的頁面),并且獲得相關的結構與內容的觀點并由此獲得“虛擬圖書”中全部資料集合的良好的概觀。除了能夠獲得相關資料的結構與內容的良好的觀點之外,如同在紙質圖書的情況下一樣,瀏覽以虛擬圖書的形式提供的資料的過程也使隨后搜索資料中的條目變得容易。
在美國專利No.5,909,207(Ho)中,虛擬圖書系統(tǒng)依靠提供虛擬圖書界面的產生以及虛擬圖書頁面上內容的顯示的軟件模塊。虛擬圖書系統(tǒng)從硬盤或其他來源(例如互聯(lián)網)讀取數據并設定某些用于虛擬圖書顯示的基本參數(例如虛擬圖書的尺寸)。然而,虛擬圖書系統(tǒng)不提供允許外部程序與基本的虛擬圖書顯示軟件模塊進行交互、控制和命令基本的虛擬圖書顯示軟件模塊從而在虛擬圖書系統(tǒng)中實現更復雜的靜態(tài)和動態(tài)效果的可編程接口。為了實現更復雜行為或為了修改虛擬圖書系統(tǒng)現有的行為,基本的虛擬圖書顯示軟件模塊必須被重新編程。這需要額外的努力、成本和時間。
因此,發(fā)明者已經認識到需要用于快速重構整個虛擬圖書系統(tǒng)的期望行為的可編程虛擬圖書系統(tǒng),包括它與外部程序和應用之間的交互以及從外部程序及應用接收命令和數據。
發(fā)明內容
考慮到用于提供顯示和瀏覽電子內容的虛擬圖書系統(tǒng)的現有方案的上述缺點,本發(fā)明的一個目標在于為快速配置虛擬圖書系統(tǒng)的期望行為提供可編程的虛擬圖書系統(tǒng)。
本發(fā)明的另一個目標是提供一種虛擬圖書行為規(guī)范方法、系統(tǒng)及包括虛擬圖書系統(tǒng)行為的動態(tài)和靜態(tài)方面規(guī)范的計算機程序產品。
本發(fā)明的進一步的目標在于以包括靜態(tài)和動態(tài)部分的數據和程序文件的形式提供圖書行為規(guī)范方法、系統(tǒng)和計算機程序產品的結構規(guī)范。
本發(fā)明再進一步的目標在于提供圖書行為規(guī)范中的動態(tài)規(guī)范部分與外部程序和數據如何交互的規(guī)范。
本發(fā)明的另一個目標在于提供圖書行為規(guī)范的動態(tài)規(guī)范部分如何通過應用程序接口與基本虛擬圖書軟件進行交互的規(guī)范。
本發(fā)明的再一個目標在于提供圖書行為規(guī)范的動態(tài)規(guī)范部分如何產生控制信號以控制虛擬圖書界面某些方面的規(guī)范。
本發(fā)明的另一個目標在于提供可編程虛擬圖書系統(tǒng)的算法。
本發(fā)明的進一步目標在于為特定事件提供方法、系統(tǒng)及計算機程序產品以觸發(fā)虛擬圖書系統(tǒng)中的特定預期動作。
本發(fā)明的另一個目標在于提供用于在特定事件完成的時候,比如在虛擬圖書的一個頁面上或顯示器屏幕上的其他地方的視頻或音頻文件播放結束之后,啟動翻動到顯示在虛擬圖書系統(tǒng)中的虛擬圖書中的預期頁面的方法、系統(tǒng)及計算機程序產品。
本發(fā)明的另一個目標在于為作為虛擬圖書系統(tǒng)中特定事件的執(zhí)行結果的特定動作的執(zhí)行提供通用算法。
本發(fā)明的進一步目標在于提供用于放大顯示在顯示屏幕上的虛擬書的方法、系統(tǒng)及計算機程序產品。
本發(fā)明的另一個目標在于提供方法、系統(tǒng)及計算機產品,用于在虛擬圖書從一個頁面翻到另外一個頁面時使收集的數據能夠持續(xù),也就是,在閱讀某頁時輸入到系統(tǒng)中的數據在后續(xù)的頁面中仍然可用,從而所有相關的數據都能被集合和匯總。
本發(fā)明的另一個目標在于提供用用于提取虛擬圖書系統(tǒng)之外的程序或應用中的信息并把信息顯示在虛擬圖書系統(tǒng)內虛擬圖書中的方法、系統(tǒng)及計算機程序產品。
本發(fā)明的進一步目標在于提供方法、系統(tǒng)及計算機程序產品,以從虛擬圖書系統(tǒng)之外的程序或應用提取電子郵件信息并將該信息顯示在虛擬圖書系統(tǒng)內虛擬圖書中。
本發(fā)明的另一個目標在于提供方法、系統(tǒng)及計算機程序產品,以將從虛擬圖書系統(tǒng)之外的程序或應用產生的搜索結果顯示在虛擬圖書系統(tǒng)內虛擬圖書中。
因為參考結合附圖考慮的下列詳細描述將更好地理解本發(fā)明,所以將很容易獲得本發(fā)明的更全面的理解以及其許多附帶優(yōu)點,其中附圖1A是虛擬圖書顯示的實施例頂視圖,它表示諸如厚度、書簽及跳轉指針等不同部分。
附圖1B是虛擬圖書的實施例頂視圖,它表示頁面的翻動和厚度的改變。
附圖1C是虛擬圖書的實施例頂視圖,它表示與略過頁數成比例的厚度的翻動。
附圖1D是虛擬圖書的實施例頂視圖,它表示頁面集合的保持和翻動以及向頁面集合翻動的單頁。
附圖1E是虛擬圖書的實施例頂視圖,它表示多個頁面被同時翻過屏幕,起初是在一個方向,隨后有些頁面改變了翻動的方向。
附圖2是單邊虛擬圖書顯示的實施例頂視圖。
附圖3闡述了用于在顯示屏幕上生成虛擬圖書的軟件系統(tǒng)的實施例。
附圖4闡述了用于在顯示屏幕上生成虛擬圖書的可編程軟件系統(tǒng)的實施例。
附圖5闡述了由用于在顯示屏幕上生成虛擬圖書的可編程軟件系統(tǒng)所使用的進程的一個實施例流程圖。
附圖6闡述了在可編程虛擬圖書系統(tǒng)中根據視頻事件的完成而翻動虛擬圖書的頁面到期望位置的進程的一個實施例的流程圖。
附圖7闡述了在可編程虛擬圖書系統(tǒng)中在特定事件結束時觸發(fā)動作的進程的一個實施例的流程圖。
附圖8是虛擬圖書顯示的實施例頂視圖,它表示虛擬圖書的放大。
附圖9是虛擬圖書顯示的實施例頂視圖,它表示在翻動和顯示許多頁面的過程中使數據持續(xù)的方法。
附圖10是虛擬圖書顯示的實施例頂視圖,它顯示了用于將來自外部電子郵件軟件的信息傳輸到虛擬圖書頁面的方法。
附圖11是虛擬圖書顯示的實施例頂視圖,它顯示了用于將外部搜索引擎軟件的搜索結果顯示到虛擬圖書頁面的方法。
具體實施例方式
現在參照附圖,其中在幾個視圖上,同樣的標號表示同樣的或對應的部分,尤其是對于附圖1A,其描述了根據本發(fā)明的虛擬圖書界面100,為了瀏覽存儲在計算機或其他電子系統(tǒng)中的文檔或任何信息,該界面能夠與現有計算機或其他電子系統(tǒng)聯(lián)合使用。
顯示在顯示屏幕111上的虛擬圖書界面100包括兩個側面,左側101和右側102。具有分別與左側101和右側102相關的左側厚度103和右側厚度104。還有底部左側厚度105和底部右側厚度106。書簽的任意標號(例如107或108)能夠被定位在左側厚度103(或105)上,并且右側書簽的任意標號(例如109及110)能夠被定位在右側厚度104(或106)。
分別處于左側厚度103和右側厚度104上的跳轉指針120及121能夠被用于選擇要跳轉的期望頁面。跳轉指針120和121能夠以垂直于頁面101和102的垂直邊的方向在厚度103和104上“上下”移動。(方向123和124用于左側跳轉指針120,方向125和126用于右側跳轉指針121)。在厚度上的“上下”移動允許跳轉指針在文檔(虛擬圖書100)中選擇想要跳轉到的期望頁面。
附圖1B描述了虛擬圖書中的頁面被翻動從而顯示文檔中先前未被看到的其他部分的情形。一個或多于一個的頁面(例如130-133)能夠被同時翻動。箭頭134-137分別表示翻動的頁面130-133的方向。在這種情況下,頁面130-133從圖書的右側102移動到左側101。當頁面從圖書的一側,比方說圖書的右側,移動到圖書的另外一側,比方說圖書的左側,的時候,圖書兩側的厚度103和104相應地發(fā)生改變。在這種情況下,如果頁面從右移到左,則右側厚度104寬度減少,并且在頁面130-133落到左側101之后左側厚度103寬度將增加。反之對于頁面從左側101翻動到右側102的情況也是類似。
當要跳轉到的期望頁面被選定(比方說通過使用跳轉指針120和121或者書簽107-110)并且跳轉被激活時,頁面將翻動到目標頁面,同時,表示當前閱讀的頁面和所要跳轉到的頁面之間的資料數量/頁面數的厚度140被表示為如附圖1C所示那樣的翻過圖書。在附圖1C中,要跳轉到的期望頁面是在圖書的右側102,并且翻動的厚度140被顯示為從圖書的右側102翻動到左側101,并且當翻動的厚度140從右側102挪到左側101時,右側的厚度104被顯示為減少了。當翻動的厚度140落到左側時,左側厚度103寬度上將會增加。反之對于翻動厚度從左側101移到右側102也是類似。
附圖1D描述了頁面集合140被某種指針142保持并且翻動,而不是允許其自由翻動并落到圖書100的左側101或右側102上的情況。這允許比較和對比不同可見頁面上的內容。附圖1D也描述了被從圖書100的左側101翻向頁面集合140的單頁145。來自圖書100的左側101或右側102的一頁或多頁能夠被添加到集合140中,或者來自集合140中的一頁或多頁能夠被從集合140中移回到圖書100的左側101或右側102。這樣使得易于閱讀和比較圖書100中的頁面。
附圖1E描述了處理圖書100中的頁面的其他方法。起初從圖書100的右側102翻到左側101的頁面150-155中的一些頁面被改變方向并且在相反的方向上翻動。頁面153-155改變方向翻回到圖書100的右側102。當讀者/瀏覽者在翻動頁面150-155的過程中確定有要閱讀的感興趣的東西,比方說在頁面152和153之間,并且為了易于觀看/閱讀而希望頁面在這個位置上被打開時,這種情況可能發(fā)生。頁面150-152朝圖書100左側101的繼續(xù)運動以及頁面153-155朝圖書100右側102的運動將使頁面152和153之間的內容被平放,以便讀者/瀏覽者查看/閱讀。
附圖2描述了虛擬圖書100的另一個實施例200。虛擬圖書200的左側203被折回到其幾乎消失的程度。這有利于只有一側(在這個實施例中為右側204)可見的“單側”圖書顯示。這在存在顯示屏幕的受限制物理尺寸并且只能顯示圖書一側的情況下是有用的。頁面235和236被顯示為從右側204向左側203翻過圖書200。在其他實施例中,虛擬圖書200的左側203可以被變成不可見的從而它不占用顯示屏幕上的任何空間。
附圖3描述了用于在顯示框架-比方說顯示屏幕上的301-內生成虛擬圖書300的軟件系統(tǒng)。軟件系統(tǒng)的中心是生成虛擬圖書300界面并且從某些來源接收內容并把它們顯示在虛擬圖書300上的圖書閱讀器軟件310。內容來源340可以從互聯(lián)網、計算機硬盤、插入到計算機的CD、其他存儲器源或其他來源獲取內容。存在圖書格式規(guī)范330,它是駐留在互聯(lián)網、計算機硬盤、CD、其他存儲器源或者其他來源中的數據文件。圖書格式規(guī)范330包括兩個或多個部分。其中一個部分為圖書屬性部分331,它包括關于虛擬圖書300的尺寸、頁面的顯示模式(例如內容是被劃分并以雙頁面-右頁面和左頁面-模式被顯示還是以單“跨頁版面”模式被顯示,其中內容橫跨左頁面和右頁面),圖書是有環(huán)繞著它的窗口框架(例如框架301)還是只顯示它自身等等的規(guī)范。另一個部分可以是內容來源部分332,它包括內容來源的規(guī)范,例如頁面1、2、3等的內容來源于何處(即來自互聯(lián)網、硬盤等的什么位置)。
圖書格式規(guī)范330基本上指示圖書閱讀器軟件310如何在顯示器屏幕上創(chuàng)建虛擬圖書300及其內容。當虛擬圖書300已經被顯示在顯示屏幕上之后,它就能夠被操作,也就是頁面能夠被翻動,內容能夠被搜索等等??刂菩盘柊l(fā)生器350可以是鼠標或是其他輸入設備。其能夠產生操作虛擬圖書300的命令,例如產生附圖1B和1E中所示的翻頁動作的翻頁命令、附圖1A中所示的跳轉指針控制命令、附圖1C中所示的跳轉命令、附圖1A中所示的標記書簽命令、附圖1D和1E中所示的復雜頁面操作命令等。
附圖3中所示的圖書格式規(guī)范330是相對靜態(tài)的。它的內容是由圖書閱讀器軟件310讀取、并被用于創(chuàng)建相對靜態(tài)的虛擬圖書300的靜態(tài)數據。這樣創(chuàng)建的虛擬圖書300上的某些內容可能是動態(tài)的,例如當某些視頻數據被顯示的時候,但由于數據是靜態(tài)的,所以圖書的大部分基本屬性(例如它的尺寸等)不會被圖書格式規(guī)范330中的數據所改變。(虛擬圖書300的某些基本屬性仍然能夠被圖書閱讀軟件310結合來自控制信號發(fā)生器350的命令而改變,例如用鼠標拖拽框架301的角來改變框架301的尺寸從而改變虛擬圖書300的尺寸,但是這個信號不是來自于圖書格式規(guī)范330的。)附圖4描述了允許更為靈活地控制顯示在顯示屏幕上的虛擬圖書400的系統(tǒng)。引導圖書閱讀器軟件410創(chuàng)建虛擬圖書400的圖書行為規(guī)范430包括靜態(tài)規(guī)范部分431和動態(tài)規(guī)范部分435。靜態(tài)規(guī)范部分431包括圖書屬性規(guī)范432、內容來源規(guī)范433和其他規(guī)范。動態(tài)規(guī)范部分435包括一個或多個指定虛擬圖書400的動態(tài)及運行行為的程序,例如程序1436、程序2437等。因此圖書行為規(guī)范430包含了數據和程序。
程序436、437等在被解釋和執(zhí)行的時候可以通過將指令發(fā)送到圖書閱讀器軟件410的應用程序接口460來指示在虛擬圖書400上進行某種動態(tài)行為。這是通過通路461、462等來影響的。
為了允許更為靈活地控制虛擬圖書400,程序436、437等也能修改圖書行為規(guī)范430中的靜態(tài)規(guī)范部分431。這被表示在通路463、464等中。比方說,如果圖書屬性432中的其中一項是虛擬圖書400的尺寸,那么程序436、437等中的一個或多個能夠通過經由通路463、464等改變圖書屬性432中的尺寸值,從而在運行期間(即在創(chuàng)建和瀏覽虛擬圖書400的過程中)實現虛擬圖書400的尺寸改變。程序436、437等自身對程序436、437等的修改也可能通過通路463、464等。
在圖書行為規(guī)范430的動態(tài)規(guī)范部分435中通過程序436、437等發(fā)送的控制和數據的另一個來源可以是虛擬圖書系統(tǒng)之外的其他程序和數據470。這被描述在附圖4中的通路471、472等中。這是嵌入其他程序和應用中的數據能夠被帶進虛擬圖書400中以及虛擬圖書400的行為可以視基本圖書閱讀器軟件410系統(tǒng)之外的其他程序和數據的行為而定的一種途徑。
通過應用程序接口460,用于操作虛擬圖書400的控制信號現在可以在程序436、437等中產生并且通過應用程序接口460實現,而不是由某些外部設備例如鼠標或其他輸入設備產生(即外部控制信號450)。
如附圖4所示,圖書行為規(guī)范430的動態(tài)和靜態(tài)規(guī)范431、435無需被封裝到一起。它們可以是鏈接到圖書閱讀器軟件410的獨立實體。
圖書行為規(guī)范430的動態(tài)規(guī)范部分435中的程序436、437等的一個實施例可以是Java腳本。解釋Java腳本436、437等的一個方法可以是使用Microsoft的Internet Explorer。本發(fā)明的Java腳本的四個實例被作為附錄A附加進本說明書。
附圖5表示圖書閱讀器軟件410創(chuàng)建和操作虛擬圖書400的進程的一個實施例。進程從步驟501開始。隨后進程進入步驟502,在此步驟中圖書行為規(guī)范430被讀取并解釋。隨后進程進入步驟503,在此步驟中在初始的靜態(tài)規(guī)范431的基礎上創(chuàng)建虛擬圖書400。在此之后,進程進入步驟504,在此步驟中動態(tài)規(guī)范部分435中的程序436、437等被解釋。隨后進程進入步驟505,在此步驟中,如果存在變化,不管是由程序436、437等引起的,或由其他外部控制信號450引起的,或者由其他來源引起的,變化都通過應用程序接460實現在虛擬圖書400上、駐留于計算機系統(tǒng)上的其他數據上、顯示屏幕上的其他被顯示的條目上,其他設備、存儲器等上、通過導線或其他方式連接到計算機系統(tǒng)的其他實體上、或其他類型的實體上。此后,進程進入步驟506,在此步驟中,如果存在變化,不管是被程序436、437等指定的,或被其他外部控制信號450指定的,或被其他來源指定的,變化都被實現在圖書行為規(guī)范430中的靜態(tài)規(guī)范431或動態(tài)規(guī)范435上。隨后進程進入步驟507,在此步驟中進程終止。
附圖6描述了附圖4所示的靈活的、可編程的虛擬圖書系統(tǒng)的應用。圖書行為規(guī)范430的動態(tài)規(guī)范部分435中的程序(436、437等的一個)執(zhí)行附圖6所示的進程。進程從步驟610開始。隨后進程進入步驟611,在此步驟中翻到頁面X。在虛擬圖書600表示,其中頁面601(“頁面X”)正在被顯示。隨后進程進入步驟612,在此步驟中在頁面X上播放視頻文件。這對應于在虛擬圖書600中的頁面601上播放的視頻文件602。此后,進程進入步驟613,在此步驟中檢查視頻播放的狀態(tài)。這個檢查可以通過嵌入到圖書行為規(guī)范430的動態(tài)規(guī)范部分435中的程序(436或437)來實現(附圖4)。比方說,程序436能夠從播放虛擬圖書600的頁面601上視頻文件602的外部視頻播放器程序(這個視頻播放器對應于其他程序及數據塊470)視頻播放的狀態(tài)。如果視頻沒有結束,進程返回步驟612,在此步驟中,繼續(xù)播放視頻。如果視頻結束了,進程進入步驟614,在此步驟中翻動到頁面Y的動作被實現。這個翻頁動作能夠通過嵌入在圖書行為規(guī)范430的動態(tài)規(guī)范部分435中的程序436來實現(附圖4)。這個程序436能夠通過應用程序接口460發(fā)送命令以實現翻頁,應用程序接口則向圖書閱讀器軟件410發(fā)送命令以實現翻頁。在通路605中圖示了這個過程,在通路605中視頻602的結束觸發(fā)頁面翻動到虛擬圖書600中的頁面604(“頁面Y”)。所示的厚度603表示在此過程中可以有超過一個頁面被跳過。此后,進程在步驟615結束。附圖6所示的進程是“事件觸發(fā)翻頁”進程。
多個重復的附圖6所示的程序段的串聯(lián)可以有很多應用,比如其中一個是講述故事,并且當圖書被展開的時候,頁面被翻動到虛擬圖書的各個位置,在這些位置上不同的視頻、音頻、文字或其他信息繼續(xù)講述故事。這陳述了一個自動翻頁和自動敘述的故事。
附圖7描述了用于附圖4所示可編程虛擬圖書系統(tǒng)的通用進程的實施例。進程從步驟701開始。隨后進程進入步驟702,在此步驟中事件X被執(zhí)行。事件X可以是視頻內容、音頻內容、文本內容或顯示在虛擬圖書頁面上的其他類型的內容、由圖書閱讀器軟件創(chuàng)建的其他事件例如翻頁、或者是由當前圖書閱讀器軟件410之外的另一個程序創(chuàng)建的事件例如附圖4中所示的其他程序及數據470。隨后進程進入步驟703,在此步驟中事件X的狀態(tài)被檢查以了解事件是否結束。如果事件沒有完成,進程返回步驟702并且事件X繼續(xù)。如果事件X完成了,隨后進程進入步驟704,在此步驟中動作Y被執(zhí)行。動作Y可以是虛擬圖書400上執(zhí)行的其他事件(例如翻頁或某些頁面的移除)、由圖書閱讀器軟件410在虛擬圖書400之外的實體上執(zhí)行的動作、或由圖書閱讀器軟件410之外的其他軟件/應用程序執(zhí)行的動作例如附圖4所示的其他程序和數據470。
附圖8描述了利用附圖4所描述的可編程虛擬圖書系統(tǒng)來產生虛擬圖書800的“放大”效果。包含在窗口801中的原始虛擬圖書800被放大并且變成放大的虛擬圖書802。放大的虛擬圖書802上的頁面具有如同在原始虛擬圖書800情況下被操作時的全部功能。即,當閱讀放大的內容時,如同附圖1A-1E所述的那些動作一樣,讀者/瀏覽者仍然能夠翻頁、使用跳轉指針、翻過多頁、向前-向后操作頁面等等。
為了實現上述的縮放功能,一種方法就是將功能硬連接到圖書閱讀器軟件410中。然而,更好的方法是在圖書閱讀器軟件410中內建一組標準的基本函數(這些基本功能可以不包括縮放功能)并且編寫程序,例如嵌入到圖書行為規(guī)范430的動態(tài)規(guī)范部分435中的程序436、437,(或編寫其他外部程序),以通過應用程序接口460以某些方式和組合調用這些基本函數,從而實現某種復雜功能,例如縮放。這是因為附圖4所述的虛擬圖書系統(tǒng)每次需要新的特定功能(比方說虛擬圖書400根據不同情況需要某種行為),并且每次這些功能被硬編碼/硬連接進圖書閱讀器軟件410中時,需要編碼、調試以及質量控制過程的完整周期,這意味著涉及時間和成本的實際量。另一方面,如果一定數量的基本函數首先被編碼進圖書閱讀器軟件420中,并且圖書閱讀器軟件410因此能夠被程序(436、437等)或其他外部程序重新編程,則能夠節(jié)省大量時間、精力和成本。
附圖9描述了利用附圖4所述的可編程虛擬圖書系統(tǒng)實現對輸入到虛擬圖書900的頁面上的數據的持續(xù)效果,使得數據能夠從頁面到頁面被保留。在附圖9所述的虛擬圖書900中,存在具有能夠允許讀者/瀏覽者輸入他們的數據的文本框和單選按鈕910、911、912、913等的901、902等頁面。這些數據可以是某些問題的是/否回答、由讀者/瀏覽者提供并輸入到文本框中的文本格式的信息等。收集這些信息的一種方法是利用Microsoft Internet Explorer組件,這些組件能夠被激活以處理每個頁面上的數據。因此每個頁面可以是能夠傳給Microsoft Internet Explorer組件的HTML文件。然而,由于每個頁面是Microsoft Internet Explorer組件的一個實例的實例化,因而在每個頁面上收集的數據是不持續(xù)的,即當焦點被移到其他頁面的時候這些數據消失了。因此,比如說如果某種類型的調查表分布在虛擬圖書900的許多頁面上,那么數據不能夠立刻被全部收集并且一起儲存和發(fā)送。
為了在附圖9所述的情況下實現數據持續(xù),可以由附圖4所述的可編程虛擬圖書系統(tǒng)創(chuàng)建臨時數據存儲器950。圖書行為規(guī)范430中的程序(436、437等的一個)能夠在數據可用時從每個頁面上提取數據并隨后把它們存儲進臨時數據存儲器950(數據通路951、952等)。這種“臨時數據存儲器”模塊950對應于附圖4中的其他程序及數據模塊470。附圖9的下半部分描述了虛擬圖書920的另一種情形,在這種情形中,頁面921和922正被顯示并且有更多的能夠被用于收集更多數據以存儲到臨時存儲器950的文本框931、932、933、934等(數據通路952)。在頁面922上,有提交按鈕935,它在被點擊時將把臨時數據存儲器950中的數據傳送到某預定位置以進一步處理(數據通路953)。因此,采用這種方法,許多頁面上的數據能夠持續(xù)并且所有希望的數據都能夠被收集并且在需要的時候立刻提交。
附圖10描述了附圖4所述的可編程虛擬圖書系統(tǒng)的另一種應用,在這種應用中數據的傳輸可以從電子郵件軟件1010(例如Microsoft Outlook)被影響在虛擬圖書1000的頁面上。許多軟件-包括電子郵件軟件-具有其他軟件可用的、與他們的程序和數據交互的“異常分支點(hook)”。虛擬圖書1000的圖書行為規(guī)范430中駐留的程序(436、437等中的一個)能夠調用電子郵件軟件中的這些異常分支點并且分別將相應的電子郵件消息1011、1012、1013、1014等傳輸到頁面1001、1002、1003、1004等上。為了實現它,程序(436、437)通過經由可用的“異常分支點”與電子郵件軟件1010(在附圖4中是其他程序及數據塊470)通信而在電子郵件中讀取內容1011、1012、1013、1014等,隨后通過應用程序接口460把數據傳輸進圖書閱讀軟件410中并通過應用程序接口460指示圖書閱讀軟件將電子郵件消息1011、1012、1013、1014等相應地放置到頁面1001、1002、1003、1004等上。這樣,初始軟件1010中的數據就能夠在用戶界面更為友好的虛擬圖書界面1000中被更好的瀏覽和搜索。
附圖11描述了附圖4所述的可編程虛擬圖書系統(tǒng)的另一個應用,在這個應用中“搜索圖書”是在第三方搜索引擎的輸出的基礎上創(chuàng)建的,并且以虛擬圖書格式1100表現。進程是由具有顯示來自互聯(lián)網的內容的能力的搜索圖書1100開始的。起初,搜索引擎站點正被訪問并且以雙頁面展開方式1110被粘貼。搜索圖書1100具有零厚度1112,這是因為除了搜索引擎站點主頁1110之外,搜索圖書1100在此時并不包含任何其他數據?,F在,假設搜索關鍵字正被輸入到搜索文本框1111中并且給出命令來執(zhí)行搜索。于是,搜索結果被粘貼到虛擬圖書1101的許多頁面上,虛擬圖書1101表示了與包含搜索結果的頁面相對應的相當大的厚度1113。在搜索站點的主頁1110上,搜索結果的某些部分也被顯示1115。在主頁1110的底部,一些按鈕被顯示1117,這些按鈕指向其余搜索結果的不同頁面。這是著名的搜索引擎站點(例如www.google.com)顯示它們的搜索結果的典型方法,也就是說結果中的一些被顯示在主頁上,其余的放在后面的許多頁面上,這些頁面在點擊底部1117的按鈕時將被生成。然而,目前在虛擬圖書1101中,所有的結果被預先生成并顯示到虛擬圖書1101的頁面上,而不是每次生成一個頁面并在點擊按鈕1117的時候顯示它。用這種方法,用戶能夠在任意時刻跳轉到期望頁面并且其余的搜索結果即時可用。在虛擬圖書1102中顯示了當按鈕1117的一個被點擊的時候,虛擬圖書1102翻動到頁面1120,在該頁面上顯示了一些搜索結果。顯示搜索結果的虛擬圖書1102方法允許所有結果在用戶想要閱讀它們的時候是即時可用的,而不像最初的搜索和顯示機制的情況,在該機制中在訪問的時候每次只顯示一頁結果。而且,由于互聯(lián)網的延時,用戶經常不得不在這些頁面能夠被下載到互聯(lián)網瀏覽器并顯示之前等待相當長的時間。在虛擬圖書系統(tǒng)中,互聯(lián)網的延時是通過這樣的事實來克服的,即在其他頁面被閱讀的同時將結果頁面預先載入。
為了實現附圖11的機制,程序(436、437等中的一個)被嵌入到虛擬圖書1100的圖書行為規(guī)范430中的動態(tài)規(guī)范部分435。這個程序(436、437等中的一個)與搜索引擎進行交互(通過附圖4所述的通路471、472等,搜索引擎對應于其他程序及數據塊470),并收集搜索結果且將它們展示在虛擬圖書1100的許多頁面上,并且這些頁面必須被生成并添加到如虛擬圖書1101中所示的虛擬圖書中。這是圖書行為規(guī)范430的動態(tài)規(guī)范部分435中程序436、437等通過應用程序接口460與圖書閱讀器軟件410交互并且指示圖書閱讀器軟件410實現虛擬圖書1100的一些基本屬性的改變的很好的例子,例如增加頁面的數目并且用某些內容加載這些頁面。因此,附圖4所述的可編程虛擬圖書系統(tǒng)在生成虛擬圖書上提供了許多靈活性,其為用戶在電子內容的瀏覽、搜索和閱讀上提供了方便。
附圖6-11中所述的所有功能性也能夠通過對圖書閱讀器軟件410(附圖4)進行硬編碼以生成期望的行為和功能性來實現。因此,結果是,不需要任何嵌入圖書行為規(guī)范430的動態(tài)規(guī)范部分435中的程序。然而,如上所述,通常這將導致更多的時間和成本被花費在軟件開發(fā)中。
除了文中所述的方法之外,相應的計算系統(tǒng)(例如桌上型電腦、膝上型電腦、筆記本、移動電話、個人數字助理(PDA)、電視等)和計算機程序產品(軟件、固件、可網絡下載的產品、以及在便攜介質(如CD、DVD、磁盤等)上可用的產品)被預見了。
雖然本發(fā)明的特定實施例已經被圖示并描述,但是可以理解,許多的變化和修改對于本領域技術人員是顯而易見的,并且附加的權利要求書用于涵蓋符合本發(fā)明的精神和范圍的所有改變和修改。
按照上述的示教,顯然可能有本發(fā)明的許多改進和變型。因此應該理解,在附加權利要求書的范圍,本發(fā)明可以以與本文中具體描述的不同的方式被實現。
權利要求
1.一種控制電子圖書的方法,包括以下步驟用包含靜態(tài)規(guī)范的電子圖書行為規(guī)范來控制所述電子圖書;以及用動態(tài)規(guī)范來控制所述電子圖書,所述動態(tài)規(guī)范被配置為允許通過用戶發(fā)起的命令或自動發(fā)起的命令來重新編程電子圖書行為。
2.根據權利要求1的方法,其中所述用包含靜態(tài)規(guī)范的電子圖書行為規(guī)范來控制所述電子圖書的步驟包含下列中至少一項控制電子圖書屬性;以及控制內容來源。
3.根據權利要求1的方法,其中所述用動態(tài)規(guī)范控制所述電子圖書的步驟包括控制電子圖書運行行為。
4.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括通過被配置為發(fā)送指令到電子圖書閱讀器軟件模塊的應用程序接口指示要在所述虛擬圖書上實現的預定動態(tài)行為。
5.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括修改所述電子圖書行為規(guī)范中的靜態(tài)規(guī)范。
6.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括用由外部模塊提供的動態(tài)規(guī)范來控制所述電子圖書。
7.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括用來自外部輸入設備或外部程序的控制信號來控制所述電子圖書。
8.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括用由所述電子圖書行為規(guī)范提供的動態(tài)規(guī)范來控制所述電子圖書。
9.根據權利要求8的方法,其中所述動態(tài)規(guī)范和所述靜態(tài)規(guī)范被封裝在公共軟件模塊中或者是被封裝在各自的軟件模塊中。
10.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括控制事件觸發(fā)的頁面翻動。
11.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括下列中至少一項控制電子圖書自動翻頁;以及控制電子圖書自動敘述。
12.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括控制電子圖書自動縮放。
13.根據權利要求1的方法,進一步包括步驟臨時存儲所述靜態(tài)和動態(tài)規(guī)范之一,以便跨過預定數量的頁面的使用。
14.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括控制數據通過電子郵件傳輸到頁面上。
15.根據權利要求1的方法,其中所述用動態(tài)規(guī)范來控制所述電子圖書的步驟包括控制基于頁面的搜索,所述基于頁面的搜索是由搜索引擎進行的。
16.一種控制電子圖書的方法,包括以下步驟讀取并解釋包含初始靜態(tài)規(guī)范的電子圖書行為規(guī)范;在所述初始靜態(tài)規(guī)范的基礎上創(chuàng)建所述電子圖書;解釋動態(tài)規(guī)范,所述動態(tài)規(guī)范被配置為允許通過用戶發(fā)起的命令或自動發(fā)起的命令來重新編程電子圖書行為,并且由所述圖書行為規(guī)范、外部圖書行為規(guī)范及輸入設備中至少一個提供;以及響應于所述動態(tài)規(guī)范改變電子圖書行為。
17.根據權利要求16的方法,進一步包括步驟響應于所述動態(tài)規(guī)范改變所述初始靜態(tài)規(guī)范。
18.一種用于控制電子圖書的系統(tǒng),包括用于用包含靜態(tài)規(guī)范的電子圖書行為規(guī)范來控制所述電子圖書的設備;以及用于用動態(tài)規(guī)范來控制所述電子圖書的設備,所述動態(tài)規(guī)范被配置為允許通過用戶發(fā)起的命令或自動發(fā)起的命令來重新編程電子圖書行為。
19.根據權利要求18所述的系統(tǒng),其中所述用動態(tài)規(guī)范控制所述電子圖書的設備包括用于控制電子圖書運行行為的設備。
20.一種用于控制電子圖書的系統(tǒng),包括用于讀取和解釋包含初始靜態(tài)規(guī)范的電子圖書行為規(guī)范的設備;用于在所述初始靜態(tài)規(guī)范的基礎上創(chuàng)建所述電子圖書的設備;用于解釋動態(tài)規(guī)范的設備,所述動態(tài)規(guī)范被配置為允許通過用戶發(fā)起的命令或自動發(fā)起的命令來重新編程電子圖書行為,并且由所述圖書行為規(guī)范、外部圖書行為規(guī)范及輸入設備中至少一個提供;以及用于響應于所述動態(tài)規(guī)范改變電子圖書行為的設備。
21.根據權利要求20所述的系統(tǒng),進一步包括用于響應于所述動態(tài)規(guī)范改變所述初始靜態(tài)規(guī)范的設備。
22.一種被配置為存儲指令的計算機程序產品,所述指令在被計算設備執(zhí)行的時候使所述計算設備能夠控制電子圖書,所述計算機程序產品包括用于用包含靜態(tài)規(guī)范的電子圖書行為規(guī)范來控制所述電子圖書的指令;以及用于用動態(tài)規(guī)范來控制所述電子圖書的指令,所述動態(tài)規(guī)范被配置為允許通過用戶發(fā)起的命令或自動發(fā)起的命令來重新編程電子圖書行為。
23.根據權利要求22所述的計算機程序產品,其中所述用動態(tài)規(guī)范來控制所述電子圖書的指令包括用于控制電子圖書運行行為的指令。
24.一種被配置為存儲指令的計算機程序產品,所述指令在被計算設備執(zhí)行的時候使所述計算設備能夠控制電子圖書,所述計算機程序產品包括用于讀取和解釋包含初始靜態(tài)規(guī)范的電子圖書行為規(guī)范的指令;用于在所述初始靜態(tài)規(guī)范的基礎上創(chuàng)建所述電子圖書的指令;用于解釋動態(tài)規(guī)范的指令,所述動態(tài)規(guī)范被配置為允許通過用戶發(fā)起的命令或自動發(fā)起的命令來重新編程電子圖書行為,并且由所述圖書行為規(guī)范、外部圖書行為規(guī)范及輸入設備中至少一個提供;以及用于響應于所述動態(tài)規(guī)范改變電子圖書行為的指令。
25.根據權利要求24所述的計算機程序產品,進一步包括用于響應于所述動態(tài)規(guī)范改變所述初始靜態(tài)規(guī)范的指令。
全文摘要
提供類似圖書的界面“虛擬圖書”以呈現電子內容的電子信息瀏覽系統(tǒng)。尤其是允許用戶通過以動態(tài)文件格式封裝的數據和程序規(guī)范來配置其行為的電子信息瀏覽系統(tǒng)??膳渲玫男袨榘ǖ恢幌抻诒伙@示在虛擬圖書中的內容的類型、被顯示內容的來源、虛擬圖書的靜態(tài)方面如圖書的尺寸、以及虛擬圖書的動態(tài)方面,如在翻動頁面的時候頁面的翻動如何視某種預定事件的執(zhí)行而定等等。
文檔編號G06F3/033GK1742319SQ200480002527
公開日2006年3月1日 申請日期2004年1月21日 優(yōu)先權日2003年1月21日
發(fā)明者郗晨惠, 霍勝邦 申請人:電子圖書系統(tǒng)有限公司