新四季網

用於數字文件處理的系統和方法

2023-05-23 01:15:21 2


專利名稱::用於數字文件處理的系統和方法
技術領域:
:本發明涉及數據處理系統,更具體來講,涉及用於處理數字文件以產生源文件的輸出表示、作為直觀顯示、硬備份或以其它顯示格式表現的方法和系統。
背景技術:
:本文所用的術語″數字文件″用來描述由數據處理系統處理的任一類型數據的數字表示,它最終以某種形式完全或部分地輸出給人類用戶,一般是通過被顯示或直觀再現(例如,藉助於直觀顯示單元或印表機),或者是通過文本-語音轉換等等。數字文件可以包括任何能夠表示的特徵,包括但不僅限於文本;圖形圖像;動畫圖形圖像;全動視頻圖像;交互圖標、按鈕、菜單或超連結。數字文件還可以包括非直觀單元,例如音頻(聲音)單元。數據處理系統,例如個人計算機系統,一般要求處理「數字文件」,這些文件可能來源於許多本地或遠端源中的任何一個,並且可能以多種數據格式(「文件格式」)中的任何一種存在。為了產生該文件的一輸出版本,例如無論作為一直觀顯示或列印副本,都需要該計算機系統解釋該原始數據文件並產生與相關的輸出裝置(例如監視器或其他直觀顯示設備或印表機)兼容的輸出。通常,該處理涉及用於解釋數據文件的應用程式、計算機的作業系統、專用於該期望輸出設備的軟體「驅動器」以及在某些情況下(特別是對於監視器或其他直觀顯示裝置)作為擴展卡形式的輔助硬體。用於處理數字文件以產生輸出的傳統方法,就硬體資源、軟體開銷以及處理時間而言效率很低,而且完全不適用於包括無線遠程通信系統在內的低功率、可攜式數據處理系統,也不適用於低成本數據處理系統,例如網路終端等等。在傳統的數字文件處理系統中還會遇到其他問題,包括需要配置多個系統組件(包括硬體和軟體組件)以便以期望的方式進行交互,以及在通過不同系統(例如在格式化、色彩再現等等方面不同)對同一原始資料的處理中的不一致性。此外,用於數字文件處理的傳統方法不能利用文件格式組件的通用性和/或再可用性。發明概述本發明的目的是提供數字文件處理方法和系統,以及結合該方法和系統的設備,它們消除或減輕了上述的傳統方法和系統的缺陷。此處所述的系統和方法提供一種顯示技術,將一應用程式的底層的功能性與圖形顯示處理分離,從而消除或減少了應用程式對控制設備顯示以及為顯示提供圖形用戶界面工具與控制的需要。此外,這樣的系統減少或消除了在處理系統上、當顯示由應用程式創建或為應用程式創建的數據(例如文件或視頻信息流)時、對該應用程式的需要。因而可以理解的是,在一方面中,此處所述的系統和方法可以顯示內容,包括文件、視頻信息流或其他的內容,並且將為查看所顯示文件提供圖形用戶功能,例如圖象縮放、全景展開或其他此類功能,而無需在顯示該內容的系統上存在其底層的應用程式。此處所述的系統和方法優越於現有技術的有益效果包括允許在同樣的工作空間內、在同一顯示器上、顯示來自不同的應用程式的不同類型的內容。很多的有益效果對於本領域中普通技術人員是顯而易見的,而且本領域中普通技術人員還能夠領會使用本發明的底層技術的很多方式,用以創建另外的系統、設備和應用程式。這些修改的系統和替代的系統與實際應用應該被理解為在本發明的範圍之內。更具體來講,此處所述的系統和方法包括一數字內容處理系統,它包括一個應用程式調度模塊(dispatcher),用於接收以若干預先確定的數據格式之一表示源數據的輸入字節流,並用於將該輸入字節流與該預先確定數據格式之一相關聯。該系統還可以包括一文件代理模塊(documentagent),用於將該輸入字節流解釋為該相關聯的預先確定數據格式的函數,並用於將該輸入字節流解析為文件對象流,該文件對象流提供在該輸入字節流內的基本結構的內部表示。該系統還包括一個核心文件引擎,用於這些該文件對象轉換為一個內部表示數據格式,並用於將該內部表示映射到顯示器上的一個位置。該系統內的一個形狀處理器處理該內部表示數據,以便驅動一輸出裝置以通過該內部表示表達的方式呈現該內容。現在將參照附圖描述本發明的實施例,並僅僅作為示例。附圖的簡短說明根據下面參照附圖的進一步說明,本發明的上述及其他目的和有益效果將更清楚,其中圖1是示出根據本發明的數字文件處理系統的一個實施例的方框圖。圖2的方框圖以更多細節呈現圖1中描述的系統;圖3是一個文件代理模塊的流程圖;圖4示意地描述了可以被圖1中的系統處理的類型的示範性文件;圖5描述了被用來減少文件的內部表示中的冗餘的兩個示範性處理的流程圖;而圖6-8描述了用於存儲一處理後的源文件的內部表示的示範性數據結構。圖示實施例的詳細說明此處所述的系統和方法包括電腦程式,這些電腦程式運行以便處理輸出流或輸出文件,其中的輸出流或輸出文件是通過應用程式為了在輸出裝置(例如視頻顯示器)上提供該輸出而產生的。根據本發明的應用程式可以處理這些流以便創建該輸出的內部表示,並且可以進一步處理該內部表示,以便產生新的輸出流,該新的輸出流可以作為本發明的應用程式產生的輸出被顯示在輸出裝置上。因此,本發明的系統將應用程式與顯示處理分離,從而使得該應用程式不用必須在一特定的顯示設備上顯示其輸出,並進一步消除了當為了顯示該該應用程式的輸出而處理該輸出時、提供該應用程式的需要。為了圖示這種操作,圖1提供了一系統10的高層功能方框圖,該系統允許若干應用程式(集中以單元13一起示出)將他們的輸出流傳送到一計算機處理過程8,該計算機處理過程8處理那些輸出流,並產生由那些流創建的集合輸出的表示,以用於顯示在設備26上。該應用程式13的集合輸出在圖1中通過輸出印表機設備26來說明,該輸出印表機設備26呈現由不同應用程式13產生的輸出內容。本領域中普通技術人員可以理解,該輸出裝置26呈現由計算機處理過程8產生的輸出,而這些輸出集中傳送多個應用程式13的內容。在由圖1提供的圖示中,所呈現的內容包括若干圖像,並且該輸出設備26是一個顯示器。然而對於本領域中普通技術人員顯而易見的是,在其他實際應用中,該內容可以用除圖像以外的格式傳送,例如聽覺的、觸覺的或適合於將信息傳達給用戶的任何其他格式或格式的組合。此外,本領域中普通技術人員可以理解的是,輸出設備26的類型將根據該應用程式而變化,並且可以包括用於呈現音頻內容、視頻內容、列印內容、繪製內容或任何其他類型內容的設備。為了說明起見,此處所述的系統和方法將主要被示為通過顯示設備顯示圖形內容,然而可以理解的是,這些示範性的系統僅僅是為了說明起見,而無論如何不能被理解為限制性的說明。因此,由該應用程式13產生的輸出由計算機處理過程8處理和集合,以便創建一個單一顯示,其中包括由單獨的應用程式13產生的全部內容。在所述實施例中,顯示器26上顯現的每一表示輸出為一文件,並且每一所述文件可以與應用程式13之一相關聯。應該理解的是,這裡所用的術語文件將包含文件、流式視頻、流式音頻、網頁以及任何其他可以由計算機處理過程8處理和顯示的數據形式。計算機處理過程8產生一個單一的輸出顯示,包括在其中顯示有應用程式13產生的一個或多個文件。所顯示的文件的集合表示由該應用程式13產生的內容,而這一內容被顯示在由計算機處理過程8產生的程序窗口內。用於計算機處理過程8的程序窗口還可以包括一組圖標,表示配置有圖形用戶接口的工具,並能夠使得用戶能夠在顯示的情況中、控制在程序窗口中出現的文件的操作。與此相反,傳統方法讓每個應用程式形成其自己的顯示,這將導致在顯示設備26上形成包括若干程序窗口的表示,一般每個應用程式13對應一個窗口。此外,每個不同類型的程序窗口將包括一組不同的工具,用於對顯示在窗口中的內容進行操作。因此,本發明的系統10具有這樣的優點提供一個一致用戶界面,並且僅僅要求了解一組用於顯示和控制不同文件的工具。此外,該計算機處理過程8對應用程式13的輸出進行操作,從而僅僅要求該輸出來創建出現在程序窗口內的文件。因此,沒有必要讓該應用程式13駐留在與處理過程8相同的機器上,也不需要應用程式13與計算機處理過程8協同操作。該計算機處理過程8僅僅需要這些應用程式13的輸出,而這個輸出可以源自於由該應用程式13在早些時侯創建的已存儲數據文件。然而,此處所述的系統和方法,可以作為系統的一部分使用,其中一應用程式能夠呈現其自己的內容、控制至少顯示器26的一部分並在一個與所述應用程式相關聯的程序窗口內呈現內容。在這些實施例中,本發明的系統和方法可以作為單獨應用程式來工作,這些單獨應用程式出現在顯示器上並在為其使用而設的顯示器的一部分內。更具體來講,圖1描述了若干應用程式13。這些應用程式可以包括文字處理程序,例如Word、WordPerfect或其他任何類似的文字處理程序。它還可以進一步包括這樣的程序產生HTML文件的NetscapeComposer、處理PDF文件的AdobeAcrobat,傳送XML或HTML的網絡伺服器、產生音頻-視頻數據流的流式伺服器、電子郵件客戶機或伺服器、資料庫、電子製表軟體或以一文件、數據流或者任何其他種類的應用程式,而該其他種類的應用程式傳送輸出作為文件、數據流或以某些適合於由計算機處理過程使用的其它格式。在圖1的實施例中,每一應用程式13將其輸出內容提交給計算機處理過程8。操作中,這個過程可以通過讓應用程式處理過程13將其輸出流作為輸入字節流引導給計算機處理過程8來實現。數據流的使用對於本領域中普通技術人員是公知的,並在文獻中已經說明了,例如包括StephenG.Kochan撰寫的「ProgramminginC」,HaydenPublishing(1983)。可選擇的是,應用程式13可以創建諸如Word文件的數據文件,該文件可以通過單獨的應用程式或者通過計算機處理過程8以流方式進入計算機處理過程8。所述計算機處理過程8能夠處理各種輸入流,以創建在顯示設備26上顯示的集合顯示。為此,並將在以下更詳細說明,計算機處理過程8處理這些輸入流,以產生每一輸入流的內部表示。在實際應用中,該內部表示被指定為看起來儘可能接近相應的應用程式13的輸出流。然而在其他的實施例中,該內部表示可被創建為對於由相應的應用程式13產生的輸出流具有經過挑選的、簡化的或局部的相似性。另外並且可選的是,此處所述的系統和方法還可對所述被解釋內容採用過濾器,從而允許從所顯示的內容中除去所述內容的某些部分,或者相反來呈現所述內容的某些部分。進一步來講,此處所述的系統和方法可以允許源文件結構的變更、允許在一文件內復原內容、重排所述文件的結構或僅僅選擇某些類型的數據。同樣,在一可選實施例中,可以在解釋處理期間添加內容,包括連結到網絡站點的有效內容。不論是哪種情況,由該計算機處理過程8創建的內部表示都可以由計算機處理過程8進一步處理,以驅動所述顯示設備26創建圖1中表示的集合圖像。現在來看圖2,圖2呈現了圖1中的所述系統的一個更詳細的表示。具體來講,圖2描述了包括所述計算機處理過程8、所述源文件11、和一顯示設備26的系統10。所述計算機處理過程8包括若干文件代理模塊12、一內部表示格式文件和處理過程14、緩衝存儲器15、類屬對象庫16、核心文件引擎(在該實施例中包括解析模塊18和呈現(rendering)模塊19)、一內視圖20、一形狀處理器22和一終端輸出24。圖2進一步描述了一可選的輸入設備30,用於將用戶輸入40傳輸給計算機處理過程8。所述實施例包括一個處理過程8,其中包括一形狀處理器22。然而,對於本領域中普通技術人員顯而易見的是,所述處理過程8僅僅是示範性的,所述處理過程8可以通過替代的處理和體系結構來實現。例如,所述形狀處理器22可以選擇性地被實現為硬體部件,例如一半導體器件,它支持所述處理過程8的其他組件的操作。此外,很清楚的是,儘管圖2以包括單個系統的功能方框圖呈現處理過程8,處理過程8也可能是分布在許多不同的平臺上,還可能是所述組件在不同的時間運行,而來自處理過程8的一個組件的輸出隨後才被作為輸入傳送給處理過程8的下一組件。如上所述,每個源文件11與文件代理模塊12相關聯,它能夠將輸入的文件翻譯成所述源文件11的內容的內部表示。為了確定適當的文件代理模塊12來處理源文件11,圖1中的所述系統10包括一應用程式調度模塊(沒有示出),它控制應用程式和所述系統10之間的接口。在一實際應用中,外部應用編程接口(API)的使用是通過所述應用程式調度模塊解決的,它傳遞數據、調用適當的文件代理模塊12、或者相反實現由應用程式提出的請求。為了給一特定的源文件11選擇適當的文件代理模塊12,所述應用程式調度模塊將所述源文件11通知給所有加載的文件代理模塊12。然後這些文件代理模塊12以與它們的特定適配性相關的信息為響應,以便翻譯所公布的源文件11的內容。一旦所述文件代理模塊12已經作出響應,所述應用程式調度模塊選擇一個文件代理模塊12,並將一個指針(例如所述源文件的一個URI(通用資源識別碼))傳遞給所選定的文件代理模塊12。在一實際應用中,所述計算機處理過程8可以作為一項業務運行,經由該業務可以創建若干進程活動,藉以支持多個文件源11的多重處理。在其他實施例中,所述處理過程8並不支持多進程活動,而是在當前進程活動中將調用由所述應用程式調度模塊(applicationdispatcher)所選定的文件代理模塊12。很清楚的是,圖2中的該示範性的實施例提供了用於處理不同文件格式的輸入數據流的一個靈活和可擴展的前端。例如可選的是,如果該應用程式調度模塊確定該系統缺少一個適用於翻譯該源文件11的文件代理模塊12,該應用程式調度模塊可以發信號給相應的應用程式13,指出該源文件的格式未被識別。可選的是,該應用程式13可以選擇允許源文件11的重新格式化,例如通過將由該應用程式13產生的源文件11從它的現在的格式轉換為另一個由所述應用程式13支持的格式。例如一個應用程式13可以確定該源文件11需要以一個不同的格式(例如該文件格式的一個早期版本)存儲。結果,應用程式13支持所述格式,該應用程式13可以用這些支持的格式重新存儲該源文件11,以便由該系統10提供的一個文件代理模塊12能夠翻譯該源文件11。可選的是,該應用程式調度模塊一旦檢測到所述系統10缺少一適當的文件代理模塊12,就可以向用戶指示可能需要一新的特定類型的文件代理模塊用於翻譯當前源文件11。為此,該計算機處理過程8可以指示該用戶需要將一個新的文件代理模塊載入該系統10,並且可能將該用戶指引到一個可以從中下載該新的文件代理模塊12的位置,例如一個網絡站點。可選的是,該系統可以自動地取出該代理程序而無需詢問該用戶,或者可以識別一個類屬代理程序12,例如一個可以抽取源文件表示文本的部分的類屬文本代理程序。進一步來講,還可以提供代理程序,來提示用戶在翻譯處理期間的輸入和指令。在一個更進一步的可選實施例中,一個應用程式調度模塊和該文件代理模塊12結合在一起作為一個輸入模塊工作,用於根據各種標準中的任何一個來識別源文件11的文件格式,例如該文件內部的一個明確的文件類型標識符,根據文件名,包括文件名擴展部分,或者根據已知的特定文件類型的內容特徵。該字節流被輸入給該文件代理模塊12,指定為該源文件11的文件格式。儘管以上的說明已經論述了由一個流或者計算機文件提供輸入數據,但應該能被本領域中普通技術人員理解的是,該系統10還可以被施加從一輸入設備(諸如數字式攝象機或者掃描儀)接收的輸入,以及從可以直接地將它的輸出流給該處理過程8或者通過一個作業系統將它的輸出流給該處理過程8的應用程式接收的輸入。在該情況下,輸入字節流可以直接來源於該輸入設備而不是來源於一個源文件11。然而,該輸入字節流仍將是適用於由所述系統10處理的數據格式,並且為了本發明的目的,從這樣一個輸入設備接收的輸入可以被認為是一個源文件11。如圖2所示,所述文件代理模塊12採用標準對象庫16來產生內部表示14,以按照在所述庫16中定義的類屬類型的文件對象的集合、連同定義所述文件內部的各種文件對象的特定實例的性質的參數,來描述所述源文件的內容。因此,所述庫16提供了一組所述文件代理模塊12、所述解析程序18以及所述系統10已經了解的若干類型的對象。例如,所述內部表示14中採用的所述文件對象可以包括文本、位形以及矢量圖形文件對象,這些矢量圖形文件對象可能是活動的、或者可能不是活動的,並且可能是兩維或者三維的視頻、音頻以及各種類型的交互對象(例如按鈕和圖標)。矢量圖形文件對象可能是具有規定的填充和透明度的類似PostScript(頁面描述語言)的路徑。位形文件對象可能包括一組子對象類型,例如JPEG、GIF和PNG對象類型。文本文件對象可表示一個特殊文本的區域。所述區域可以包括一個文本段落,一般被理解為一組字符,出現在兩個分隔符(類似一對回車符)之間。每個文本對象可以包括一連串字符和所述字符串的樣式信息,包括一個或多個相關聯的字體、標點及其他此類的樣式信息。定義文件對象的特定實例的參數通常包括定義所述文件對象的物理形狀、大小和位置的空間坐標系以及任何相應的用於定義性質隨時間而變的文件對象的瞬態數據,從而允許所述系統處理動態文件結構和/或顯示功能。例如,一個視頻輸入流可以由所述系統10作為一系列以例如30幀每秒的速率變化的圖形來處理。在該情況下,這種圖形對象的瞬態特徵指示所述圖形對象每秒更新30次。如上所述,對於文本對象,所述參數一般地還包括被應用於字符串的字體和大小。對象參數還可能定義其他性質,例如透明度。很清楚的是,所述內部表示可以本地的文件格式存儲/存放到所述系統,而輸入給所述系統10的可能的源文件範圍可以包括所述系統中的本地文件格式的文件。還可能是使用適當的轉換代理程序,在需要的時候將所述內部表示14轉換為一些其他文件格式中的任何一個。圖3描述了可以由一個文件代理模塊12執行的一個示範性處理的流程圖。具體來講,圖3描述了表示一個示例文件代理模塊12的操作的一處理過程50,在該情況下,該文件代理模塊12適用於將MicrosoftWord文件的內容翻譯為內部表示格式。具體來講,所述處理過程50包括一個初始化步驟52,其中所述處理過程50初始化數據結構、存儲空間及其他將由所述處理過程50在翻譯所述源文件11期間使用的資源。在步驟52之後,所述處理過程50進行一系列步驟54、58和60,其中所述源文件11被分析並被分成子節。在圖3中所述處理過程50中,步驟54、58和60在所述源文件11流入到所述文件代理模塊12中時首先將其細分為小節,然後將所述小節細分為段落,然後將段落細分為組成所述段落的單獨的字符。可以在一張分塊表格(piecetable)內識別出所述源文件11內識別出的所述小節、段落和字符,該表格包含在所述源文件11內指向不同子節的指針。本領域中普通技術人員可以理解的是,在圖3中描述的該分塊表格表示由MSWord採用的一構造,用於提供指向文件的不同的、所識別的子節的指針。可以進一步理解的是,分塊表格或者類似結構的分塊表格的使用是可選的,而且取決於使用的應用程式,包括取決於被處理的文件的類型。當在步驟60中所述處理過程50開始識別出現在一特定段落內的不同的字符時,該處理60可以進行到步驟62,其中一個樣式被施加於在步驟60中識別出的字符或一組字符。一個樣式的施加被理解為將所述識別出的字符與表示樣式相關聯,該表示樣式與那些字符一起被使用。所述表示樣式可以包括與所述字符相關聯的性質,包括字體類型、字體大小,無論所述字符是被加粗、變斜或是採用其他樣式。另外,在步驟62中,所述處理可以確定該字符是否被旋轉,或者是否沿一曲線軌跡或者其他形狀放置。另外,在步驟62中,與字符在其中的段落相關聯的樣式也可以被識別出並與這些字符相關聯。這樣的性質可以包括與段落相關聯的行距、與該段落相關聯的頁邊距、字符之間的間隔及其他此類性質。在步驟62之後,該處理過程50進行到步驟70,其中該內部表示被建立。說明文件結構的對象在步驟64中被作為內部表示內的一個對象創建,該對象的關聯樣式連同其包含的字符串在步驟68在內部表示內被獨立地創建。將在之後更詳細解釋的圖6、7和8,這些圖描述了由該處理過程50創建的文件結構,其中一個文件的結構由一組文件對象記錄,而與這些文件對象相關聯的數據被保存在一個單獨的數據結構中。在步驟70之後,處理過程50進行到判定塊72,其中該處理過程50確定與上次已處理字符相關聯的段落是否完成。如果該段落沒有完成,該處理過程50返回到步驟60,讀取該段落的下一字符。或者,如果該段落是完成的,該處理過程50進行到判定塊74,在其中處理過程50確定該節是否完成。如果該節是完成的,該處理過程50返回到步驟58,讀取該表格的下一段落。或者,如果該節是完成的,該處理過程50進行到步驟54,其中如果存在下一節的話就從所述分塊表格讀取下一節,並且處理繼續。一旦所述文件已經被處理完,系統8可以傳輸、存儲、輸出或者相反為後來的使用存貯所述解釋後的文件。所述系統可以用一個與所述內部表示兼容的格式存貯所述解釋後的文件,並且可選用其他格式以及包括與所述源文件11的文件格式兼容的格式(可以採用沒有示出的「輸出文件代理模塊」,能夠接收內部表示數據和創建源文件數據)存貯,或者採用二進位格式,文本文件描述結構,標記文本(marked-uptext),或者用任何其他適當的格式存貯;而且可以採用一通用的文本編碼模型,包括unicode(統一代碼)、shiftmapping(移位映射)、big-5(繁體代碼)以及亮度/色度模型。從上述可以看出,所述內部表示14的格式將如由所述對象類型與它們的參數說明的所述文件的″結構″(或者″布局″)與各種對象的″內容″分離;例如一文本對象的字符串(內容)與所述對象的空間參數分離;一圖形對象的圖像數據(內容)與它的空間參數分離。這允許以一種壓縮的方式定義文件結構,並且為遠端存儲並只有當需要時才由系統取出的內容數據提供了選項。所述內部表示14用″高級″描述來說明所述文件和它的構成對象。如上參照圖3所述的文件代理模塊12,能夠處理由MSWord字處理應用軟體創建的一數據文件,並將該數據文件翻譯為一個內部表示,該內部表示由一組從所述庫16中選擇出來的對象類型形成,表示所述處理文件的內容。因此,所述文件代理模塊12分析所述Word文件並將該文件的結構和內容翻譯為一個內部表示為所述計算機處理8所知的內部表示。在圖4中描述了可以由所述文件代理模塊12處理的一種Word文件的一個例子。具體來講,圖4描述了由MSWord應用程式創建的Word文件32。所述文件32包括一個信息頁面,其中一個頁面包括兩列文本34和一個圖表36。圖4進一步描述了這些文本列34和圖表36是以這樣一種方法位於頁面38上一列文本從頁38的頂端一直排到頁面38的底部,第二列文本從頁面的中部附近一直排到到頁面底部,而圖表36被置於第二列文本34上方。如上參照圖3所述,所述文件代理模塊12開始通過確定所述文件32包括一個頁面和包含若干不同的對象來處理所述文件32。對於由所述文件代理模塊12發現的一個頁面,該文件代理模塊12識別所述頁面的樣式,例如可能是一個肖像畫格式的8.5×11頁面的頁面樣式。由該文件代理模塊12識別出的頁面樣式被嵌入到該內部表示中,以供以後由解析程序18在將文本格式化和使文本流進由處理過程8創建的文件時使用。對於圖4中所描述的文件32僅僅給出一個頁面。然而,很清楚的是,文件代理模塊12可以處理包括若干頁面的Word文件。在這種情況下,文件代理模塊12將分別通過創建一個頁面然後用在庫中發現的類型的對象填充它來處理每個頁面。因此頁面樣式信息可以包括一個文件包含若干頁面以及這些頁面具有一特定大小。其它的頁面樣式信息可以由該文件代理模塊12識別出,而識別出的頁面樣式信息可以根據該應用程式變化。從而,可以由一個能夠處理MicrosoftExcel文件或者一實時介質數據流的文件代理模塊識別出不同的頁面樣式信息。進一步參照圖4描述,一旦該文件代理模塊12已經識別出該頁面樣式,該文件代理模塊12可以開始將該文件32分解為若干個對象,這些對象可以被映射到為該系統所知的、並且一般保存在庫16中的文件對象。例如,該文件代理模塊12可以處理該文件32,以發現文本對象、位圖對象和矢量圖形對象。可以選擇提供其他類型的對象類型,包括視頻類型、動畫類型、按鈕類型和腳本類型。在該實際應用中,該文件代理模塊12將識別出一個文本對象34,其相關的樣式具有兩列。在該文本對象34內出現的文本段落可以被分析,來識別每個相應的段落中的每個字符。處理過程50可以將樣式性質施加於每個識別出的字符串,而在文件32內識別出的每個字符串可以被映射到該庫16內列舉類型的文本對象。每個字符串和施加的樣式可以被理解為由文件代理模塊12識別出的對象,如已經在文件32內被發現,並且已經被譯為一個文件對象,在該情況下,該文件對象是庫16內列舉類型的一文本對象。該內部表示對象可以從文件代理模塊12流進內部表示14。該文件代理模塊12可以繼續將在文件32內出現的對象翻譯成為系統10所知的文件對象,直到每個對象都已經被翻譯。這些對象類型可能適合於該應用程式,並且可能包括適用於翻譯源數據的對象類型,該源數據表示數字文件、音頻/視頻表示、音樂文件、交互腳本、用戶界面文件和圖像文件、以及任何其他文件類型。現在來看圖5,能夠看出圖5中描述的處理過程80允許將源文件11的內部表示中出現的相似對象進行壓縮,以便減少內部表示的尺寸。舉例來說。圖5描述了一處理過程80,其中步驟82具有一基本庫對象A,在步驟84中通過將基本對象插入到將成為源文件11的內部表示的文件中來處理該基本庫對象A。在步驟88中,另一個由文件代理模塊12提供的對象B被傳送給該內部表示文件處理14。然後該處理過程80進行步驟序列92-98,其中將對象A的特徵與對象B的特徵進行比較,以確定這兩個對象是否具有相同的特徵。舉例來說,如果對象A和對象B表示兩個字符例如字母P和字母N,如果字符P和N色彩相同、字體相同、尺寸相同並且樣式(例如粗體或者斜體)也相同,那麼處理過程80在步驟94中將這兩個對象結合在一起,並處於存貯在內部表示內的一個對象分類中。如果這些特徵不匹配,那麼處理過程80將他們作為兩個單獨的對象添加到內部表示中。圖5描述了一個處理過程80,其中該內部表示文件14將這些對象壓縮為一個物理上鄰近對象的相似性的函數。本領域中普通技術人員可理解的是,這僅僅是用於壓縮對象的一種處理,可以採用其他方法。例如,在一可選實際應用中,該壓縮過程可以包括用於壓縮視覺上鄰近的對象的處理。圖6、7和8描述了已經由圖1和2中描述的系統處理過的文件的內部表示之結構。該文件的內部表示可以作為存儲在磁心存儲器中的計算機文件或者數據來嵌入。然而,對於本領域中普通技術人員顯而易見的是,所選的用於記錄或者傳輸該內部表示的數據結構可以根據應用而變化,而且任何適當的數據結構都可以與此處所述的系統和方法結合使用,而不會脫離本發明的範圍。在下文將更詳細的說明被處理文件的內部表示的結構將文件的結構與文件的內容分離開。具體來講,文件的結構由數據結構記錄,該數據結構指出組成該文件的不同文件對象以及這些文件對象相互之間排列的方式。在圖6中示出結構與內容的分離,其中數據結構110記錄被處理的文件的結構,並以一種與該文件相關聯的內容無關的數據格式存儲該結構。具體來講,該數據結構110包括一資源表112和一個文件結構114。該資源表112提供一個用於構造該文件的內部表示的資源列表。例如該資源表112可以包括一個或多個出現在文件內部的公共結構之表格,例如字體、連結和色彩列表。可以在該資源表112內用編號引用這些公共結構。資源表112的資源涉及在文件結構114內安置的文件對象。如圖6所示,文件結構114包括若干由嵌套括號組表示的存儲包(container)118。在存儲包118內是若干文件對象120。如圖6所示,存儲包118表示在正在被處理的文件內出現的文件對象的集合。圖6進一步示出,存儲包118還能夠擁有子存儲包。例如,文件結構114包括一個由外面一組標為1的括號識別出的頂級存儲包,還具有三個嵌套存儲包2、3和4。另外,存儲包4在存儲包1和存儲包3內被兩次嵌套。每個存儲包118表示在文件內的特徵,其中這些特徵可以是單獨的文件對象(例如所述文件對象120)的一個集合。這樣舉例來說,一個文件例如圖4中描述的文件32,可以包括一個表示該字符串的存儲包,其中該字符串包括在列34內出現的文本。舉例來說,在該字符串存儲包內出現的不同文件對象120可以由該字符串內出現的不同段落表示。該字符串存儲包具有一個與之相關聯的樣式。舉例來說,圖4中描述的字符串可以包括表示該字符字體類型、字體大小、樣式(例如粗體或者斜體字樣式)的樣式信息,以及表示該列的尺寸包括寬度和長度的樣式信息,該列中存在該字符串或者該字符串的一部分。這些樣式信息可以在以後被解析模塊18使用,用來對上下文專用視窗20內的文本重新格式化和使之回流。存儲包的另一個例子可以是一個表格,舉例來說可以出現在文件32的一列34內。該表格可以是一個具有對象的存儲包。存儲包的其他類型和運用將根據涉及的應用而變化,而本發明的系統和方法不局限於任何特定的對象類型組或者存儲包。因此,當文件代理模塊12翻譯源文件11時,將遇到屬於已知對象類型的對象,而該文件代理模塊12將請求庫16創建一個適當對象類型的對象。該文件代理模塊12於是將所創建的文件對象放置到文件結構114內的適當位置,以保持源文件11的整體結構。舉例來說,當文件代理模塊12遇到源文件11中的圖像36時,文件代理模塊12將圖像36(例如可能是一個JPEG圖像)識別為一個位圖類型的對象,而可選子類型為JPEG。如圖3中步驟64和68所示,這個文件代理模塊12可以創建適當的文件對象120並且可以將所創建的文件對象120放置到結構114中。另外,用於JPEG圖像文件對象120的數據,或者在另一個例子中,用於字符的數據以及一字符串的相關樣式,可以被存貯在圖8中描述的數據結構150內。當源文件11正在被處理時,文件代理模塊12可以識別其他的存儲包,其中這些其他的存儲包可以表示在一個已存在的存儲包(例如字符串)內出現的子特徵。例如,這些子特徵可以包括到參考資料的連結,或者是到出現在文件內、並且包含單獨的文件對象120的集合的剪貼的直觀區域或者特徵的連結。該文件代理模塊可以將這些文件對象120放置在一個單獨的存儲包內,而該存儲包將被嵌套到已經存在的存儲包中。圖7A中以一樹狀結構130示出這些文件對象120以及存儲包118的布局,其中單獨的存儲包1、2、3和4分別被示為存儲包對象132、134、138和140。存儲包118和文件對象120被以樹狀結構布置,該樹狀結構示出文件結構的嵌套的存儲包結構以及在該存儲包118內存在的不同文件對象120。圖7A的樹狀結構還圖示出該結構114記錄和保持了源文件11的結構,以文件對象120的分級結構顯示了源文件,其中該文件對象120包括樣式信息,例如在其中出現一字符串的列的尺寸,或者是瞬態信息,例如用於流式內容的幀頻。因此,通過一系列參數化的組件說明了每個文件的圖形結構。在下面的表1中給出了一個例子。表1可以看出,表1給出了可以用來說明一個文件的圖形結構的參數的一個例子。表1給出例如對象類型的參數的例子,在該情況下是一個位圖對象類型。提供了邊界框參數,並給出該文件對象在源文件11中的位置。表1進一步提供了採用的填充以及一個表示該對象的透明度的阿爾法因子。形狀參數提供了一個關於對象形狀的句柄(handle),在該情況下可以是一條定義對象輪廓的路徑,包括不規則形狀的對象。表1還給出一個時間參數,它表示該對象的瞬態變化。在這個例子中,該圖像是穩定的及沒有隨時間而變化。然而,如果該圖像對象給出流式媒體,那麼該參數可以包含一個指示該對象變化的速率的瞬態特性,例如該內容的可與期望幀頻相比較的速率。因此,該構造單元都是具有可流動數據內容的存儲包,這些可流動數據單獨保持並通過存儲包的一個句柄引用。以這種方法,可以根據該文件結構遠端地保持任何或者所有的數據內容。這允許文件以可以本地保持和遠端保持的數據內容的混合的方式呈現文件。另外,該數據結構允許對源文件的內部表示的快速漸進的呈現,可以首先呈現較寬泛和較高層的對象,而細微特徵可以在隨後順序中被呈現。因此,單獨的結構和數據允許在流式數據「填充」內容的時候呈現視覺文件。另外,內容和結構的分離允許容易地編輯或者改變文件的內容。因為文件結構與內容無關,可以將不同的內容代入該文件結構。這可以通過存儲包原理在存儲包上完成或者對整個文件進行。文件的結構可以被傳送而獨立於內容,而在之後提供內容,或者是該結構被傳送所至的平臺上進行呈現。此外,圖7A表明源文件11的結構可以被表示為一個樹狀結構130。在一實際應用中,該樹狀結構可以被修改和編輯,以改變源文件11的表示。例如,該樹狀結構可以被修改以便向該樹130增加另外的結構和內容。這在圖7B中進行了描述,圖7B示出圖7A在一高層存儲包下複製和呈現的原始樹狀結構。這樣,圖7B示出可以通過處理由文件代理模塊12產生的樹狀結構130創建一個新的文件結構,從而創建一個新的表示。這就允許對一個文件內的對象的視覺位置進行改變,而不同的對象120的相對位置可以保持相同。通過調整樹狀結構130,此處所述的系統可以編輯和修改內容。例如,在那些其中樹狀結構130中的內容表示視覺內容的應用中,此處所述的系統可以編輯該樹狀結構以便複製該文件的圖像並且並排地呈現文件的圖像。替換的方案是,該樹狀結構130可以被編輯並被補充,以便增加另外的視覺信息,例如通過增加一個新文件或者文件的一部分的圖像。此外,通過控制樹狀結構改變的速率,此處所述的系統可以創建一個文件逐漸改變的錯覺,例如滑過一個例如顯示設備26的顯示器,或者逐漸改變為一個新的文件。還可以實現其他效果,例如縮略圖的創建及其他類似結果,本領域中的普通技術人員通過對此處所述的系統和方法做修改,而這樣修改後的系統和方法將屬於本發明的範圍。該源文件11的數據獨立於結構114存貯。為此,每個文件對象120包括一個指向與對象相關聯的數據的指針,而這個信息可以被安排在一個間接尋址列表內,例如圖8中描述的間接尋址列表。如圖8所示,在這個實際應用中,每個文件對象120被編號並創建了一個間接尋址列表152,其中每個文件對象編號154與一個偏移量158相關聯。例如,由附圖標記160標誌出的文件對象編號1可以與由附圖標記162標誌的偏移量700相關聯。這樣,該間接尋址列表將對象編號1與偏移量700相關聯。該偏移量700可以表示磁心存儲器中的一個位置,或者一個文件偏移量,其中與對象1相關聯的數據可以駐留。如在圖8中進一步示出的,可以存在一數據結構150,其中可以存貯表示與一相應的文件對象120相關聯的內容的數據。因此舉例來說,位於跳轉位置700的所述對象1,可以包括表示在圖6中描述的存儲包1的字符串中存在的字符的Unicode字符。類似地,在圖8中由附圖標記172描述的對象2數據,與由附圖標記170識別的磁心存儲器位置810相關聯,可以表示JPEG位圖,該位圖與在圖6的文件結構內引用的位映象文件對象120相關聯。本領域中普通技術人員應注意的是,因為數據與結構獨立,一源文件的內容被保存在一集中式儲存庫(centralizedrepository)中。因而,此處所述的系統允許對不同類型的數據對象壓縮。這樣的處理在有限資源系統中提供更大的存儲靈活性。返回到圖2,很清楚的是,一旦用於壓縮一個內部表示文件的內容的處理完成了對不同的對象的壓縮,這些對象被傳遞給解析模塊18。該解析模塊18對在內部表示的結構部分中識別的對象進行解析,並參照與這一對象相關聯的數據內容,再次將位置和樣式信息應用到每個對象。呈現組件19產生一個由內部表示14表示的文件的上下文特定表示,也就是″視圖″20。所要求的視圖可以是所有這些文件、一個完整文件或者一個或一些文件的一部分。該呈現組件19接收視圖控制輸入40,該視圖控制輸入40定義將要被產生的特定文件視圖的所視上下文以及任何有關瞬態參數。舉例來說,可以要求該系統10產生一個文件的一部分的圖象縮放視圖,然後變為全景展開或者滾動該圖象縮放視圖以顯示該文件的鄰近部分。該視圖控制輸入40被該呈現組件19解釋,以確定特定的視圖要求內部表示的哪一部分,以及該視圖怎樣顯示、何時顯示和顯示多長時間。該上下文特定的表示/視圖20是用基本形狀和參數表達的。該呈現組件19還可以在產生源文件11之所要求的視圖20時,對內部表示的相關部分執行另外的預處理功能。該視圖表示20被輸入給一形狀處理器22,用於處理以產生一個適當格式的輸出,來驅動一個輸出設備26,例如顯示設備或者印表機。該呈現組件19的預處理功能可以包括色彩校正、分辯率調整/增強和防疊處理(anti-aliasing)。分辯率增強可以包括圖象縮放功能,當由目的輸出設備顯示或者再現對象的內容時保持其清晰度。解析度調整可以上下文相關;例如當該文件視圖是靜態的時候,在該顯示文件視圖正在展開或者滾動和增加期間,特定的對象的顯示分辯率可以被減少。可選的是,在解析模塊18和內部表示14之間可以有一條反饋路徑42,例如為了觸發內部表示14的內容的更新,比如在由內部表示所表示的源文件11包括多幀動畫的情況。該呈現組件19的輸出以基本對象表示文件。對於每一文件對象,該呈現組件19的表示至少以一物理的、矩形邊界框定義該對象,而該對象的實際輪廓路徑由該邊界框、對象的數據內容和它的透明度界定。該形狀處理器22解釋該基本對象並將它轉換為適合於目標輸出設備26的輸出幀格式;例如對於印表機的點映射,對於繪圖儀的向量指令組或者對於顯示設備的位圖。一個對形狀處理器22的輸出控制輸入44給該形狀處理器22提供信息,以便產生適用於特別的輸出設備26的輸出。該形狀處理器22最好處理由視圖表示20用″形狀″(即對象的輪廓形狀)、″填充″(對象的數據內容)以及″阿爾法″(對象的透明度)來定義的對象,執行適合於所要求的視圖和輸出設備的圖象縮放和剪貼(一般利用通過掃描轉換或類似手段得到的像素,用於大多數種類的顯示設備或者印表機)。該形狀處理器22可選地包括一邊緣緩存器,它利用掃描轉換的像素定義對象的形狀,並且最好是對輪廓形狀應用防疊處理。可以用一種以輸出設備26的特徵確定的方式,通過對對象邊界施加灰度級梯度(grey-scaleramp)執行防疊處理。該方法啟用儲存有效的形狀剪貼以及形狀交叉處理,並且也是存儲有效的和處理器有效的。可以採用查找表或者其他技術來定義多頻聲響應曲線,提供非線性的呈現控制。由形狀處理器22處理的單獨的基本對象被組合成合成輸出幀。在題為ShapeProcessor(形狀處理器)、與此同一日期申請的專利申請中,更詳細的示出了適合與此處所述的系統一同使用的一種形狀處理器的設計方案,該申請的內容合併作為參考。然而,可以採用任何適當的形狀處理器系統或者處理過程,而不會脫離本發明的範圍。如上所述,圖1中描述的處理過程8可以被實現為一個軟體組件,在一數據處理系統上運行,所述數據處理系統比如是手持式計算機、行動電話、機頂盒、傳真機、複印機或者其他辦公設備、嵌入式計算機系統、Windows或者UNIX工作站或者任何其他能夠完全或者部分地支持如上所述的文件處理系統的計算機/處理平臺。在這些實施例中,所述系統可以用C語言電腦程式或者以任何高級語言(包括C++、Fortran、Java或者Basic)編寫的電腦程式實現。此外,在採用微控制器或者DSP(數位訊號處理器)的實施例中,所述系統可以使用以微代碼編寫的電腦程式或者是以高級語言編寫並且被編譯為可在所採用平臺上執行的微代碼的電腦程式實現。此類系統的開發對於本領域中普通技術人員是已知的,而且此類技術在IntelStrongARMprocessorsSA-1110MicroprocessorAdvancedDeveloper’sManual進行了闡述。此外,用於高級編程的一般技術是已知的,舉例來說,在StephenG.Kochan的ProgramminginC(HaydenPublishing,1983)中就進行了闡述。應注意的是,數位訊號處理器特別適合於實現信號處理功能,包括諸如通過調整對比度、邊緣清晰度和亮度進行圖像增強的預處理功能。用於數位訊號處理器和微控制器系統的代碼開發按照在本
技術領域:
中公知的原理。因此,儘管圖1和2用圖形將該計算機處理過程8描述為包括若干功能塊單元,對於本領域中普通技術人員顯而易見的是,這些單元可以實現為能夠在數據處理平臺上運行的電腦程式或者部分電腦程式,從而將該數據處理平臺配置為根據本發明的系統。此外,儘管圖1以一個文件處理過程8和顯示設備26的集成化裝置描述該系統10,對於本領域中普通技術人員顯而易見的是這僅僅是一實施例,此處所述的系統可以通過其他體系結構和布局實現,包括將處理過程8的文件處理功能與由顯示器26執行的文件顯示操作分離的系統體系結構。此外,很清楚的是,本發明的系統不局限於包括顯示器或者輸出設備的那些系統,而是本發明的系統將包含處理一個或多個數字文件、以便創建可以在一輸出設備上呈現的輸出的處理系統。然而,該輸出可以被保存在一個數據文件中,用於隨後在顯示設備上表示,用於長期存儲、經由網絡傳送或者其它不同於直接顯示的目的。因此,對於本領域中普通技術人員顯而易見的是,此處所述的系統和方法可以支持許多不同的文件和內容處理應用程式,而且用於特定應用程式的系統或者處理的結構將根據該應用程式及設計者的選擇而變化。根據以上所述,可以理解的是,本發明的系統可以是″硬布線的″;例如在ROM中實現和/或集成到專用集成電路(ASIC)或者其他單片系統裡,或者可以實現為固件(可編程只讀存儲器,例如可擦除可編程只讀存儲器),或者被實現為軟體,被本地或者遠端存貯並在一特定設備要求時被取出和執行。這樣的改善和修改可以被合併而不會脫離本發明的範圍。本領域中的普通技術人員僅僅使用常規實驗就會知道或者能夠確定,有許多等效於此處所述的實施例和實際應用的方案。舉例來說,此處所述的系統和方法可以是用於處理源文件11的獨立系統,但是可以選擇性的是,這些系統可以許多不同的方式被合併到各種類型的數據處理系統和設備中,以及合併到外圍設備裡。在一通用數據處理系統(″主機系統″)中,本發明的系統可以與所述主機系統的作業系統和應用程式並列合併,或者可以被完全地或者部分地合併到所述主機作業系統裡。舉例來說,此處所述的系統能夠在具有LCD顯示器的可攜式數據處理裝置上快速顯示各種類型的數據文件,而無需要求使用瀏覽器或者應用程式。採用本系統的可攜式數據處理裝置的例子包括″掌上型″計算機、可攜式數字助理(PDA,包括片型PDA,其中主要的用戶界面包括圖形顯示,用戶通過它直接依靠一指示筆設備進行交互)、可訪問網際網路的行動電話及其他通訊裝置。為了便攜性,這類數據處理裝置要求小型、低功率的處理器。一般,這些設備採用在ASIC(專用集成電路)中設計的高級RISC型核心處理器,以便使該電子器件封裝是小型的和集成的。這類設備還具有有限的隨機存取存儲器,並且一般沒有非易失性的數據存儲器(例如硬碟)。傳統的作業系統模式,例如在標準臺式計算系統(PC)採用的作業系統模式,要求大功率的中央處理器和大容量存儲器,用於處理數字文件並產生有效輸出,是完全不適於這類數據處理裝置的。具體來講,傳統的系統不提供以一集成的方式對多文件格式的處理。相形之下,此處所述的系統對所有文件格式採用公共的處理與傳遞途徑,從而提供一個高度集成的文件處理系統,它在功率消耗和系統資源的利用方面是極其高效的。本發明的系統可以被集成在可攜式數據處理裝置的BIOS級,能夠用比傳統系統模式低得多的系統開銷進行文件處理與輸出。另一方式是,這些系統可以被實現在僅僅高於傳輸協議棧(transportprotocolstack)的最低系統級。舉例來說,所述系統可以被合併到一網絡設備(卡)或者系統中,以提供網絡業務量的嵌入處理(例如在TCP/IP系統中的分組級工作)。此處所述系統可以被配置為用一預定組數據文件格式和特定的輸出設備運行;例如所述設備的直觀顯示裝置和/或至少一種印表機。此處所述的系統還可以被合併到低成本數據處理終端中,例如增強的電話和「薄的」網絡客戶終端(例如具有有限局部處理和存儲資源的網路終端),以及可交互/可訪問網際網路的有線電視系統使用的「機頂盒」。所述系統還可以被合併到外圍設備中,例如硬拷貝設備(印表機和繪圖儀)、顯示設備(例如數字投影儀)、網絡設備、輸入裝置(攝像機、掃描儀等等)以及多功能外圍設備(MFP)。當合併到印表機中時,所述系統使該印表機能夠接收來自主機數據處理系統的原始數據文件,並準確地再現所述原始數據文件的內容,而無需由所述主機系統提供特別的應用程式或者驅動程序。這避免或者減少了對配置計算機系統以驅動特定類型印表機的需要。本系統直接地產生源文件的點映射圖像,適用於由印表機輸出(無論本系統是否被合併到印表機本身還是合併到主機系統中都可以)。類似的設想適用於其他硬拷貝設備,例如繪圖儀。當合併到一顯示設備(例如一投影儀)中時,本系統使該設備能夠準確地顯示原始數據文件的內容,而無需使用主機系統上的應用程式或者驅動程序,也無需主機系統和/或顯示設備的特定的配置。當這些類型的外圍設備裝備有本系統時,可以通過任何類型的數據通信網絡,接收與輸出來自任何源的數據文件。此外,此處所述的系統和方法可以被合併到汽車內系統中以為駕駛員提供信息、或者娛樂系統,有助於在車輛內傳送信息或者是將信息分送給車輛以外進行通信的網絡。進一步來講,應該理解的是,此處所述的系統可以驅動具有多個輸出源的設備,以便僅僅對控制參數修改就能維持一致的顯示。例子包括但是不局限於合併有一個直觀顯示器和列印頭的一個STB或者汽車內系統,從而允許文件的查看和列印而無需源應用程式和驅動程序。根據以上所述,應該理解的是,本發明的系統可以是「硬布線的」;例如實現在ROM中和/或集成到專用集成電路ASIC或者其他單片系統裡,或者可以被實現為固件(可編程只讀存儲器,例如可擦除可編程只讀存儲器ePROM),或者被實現為軟體,並被本地或者遠端存貯而在一特定設備要求時被取出和執行。因此應該理解的是,本發明不限於此處公開的實施例,而是要根據權利要求書理解,依法解釋為相應的範圍。權利要求1.一種用於表示數字內容的方法,包括接收表示所述數字內容的數據源,處理所述數據源,以識別在所述源內出現的對象,為每一對象創建一文件對象,所述文件對象表示所遇到的對象的內部表示,而且所述文件對象將所述對象的結構與所述對象的數據內容分離,將所述文件對象編組到一文件結構裡,所述文件結構表示所述數字內容的結構,將所述對象的數據內容編組到一數據內容結構裡,以及提供一組指針,所述指針將所述文件結構中的所述文件對象與所述數據內容結構中存貯的所述數據內容相關聯。2.如權利要求1所述的方法,進一步包括創建一間接尋址列表,所述間接尋址列表存貯將所述文件對象與所述數據內容相關聯的那組指針。3.如權利要求1或者2所述的方法,其中,接收數據源包括接收由一應用程式產生的數據流。4.如權利要求1或者2所述的方法,其中,接收數據源包括接收根據來自一應用程式的流式數據而產生的數據流。5.如權利要求1或者2所述的方法,其中,接收數據源包括接收來自一外圍設備的數據流。6.如權利要求1或者2所述的方法,其中,接收數據源包括接收來自若干個數據源的數據流。7.如權利要求6所述的方法,進一步包括將在第一數據源和第二數據源中發現的文件對象合併,以建立複合的文件結構。8.如前面任一權利要求所述的方法,其中,將所述文件對象編組到一個表示所述數字內容的所述結構的文件結構裡,包括過濾所述文件對象以便選擇用於所述文件結構的文件對象子組。9.如前面任一權利要求所述的方法,其中,將所述文件對象編組到一個表示所述數字內容的所述結構的文件結構裡,包括將所述文件對象編組到一個不同於所述數據源的結構的配置裡。10.如前面任一權利要求所述的方法,其中,將所述文件對象編組到一個表示所述數字內容的所述結構的文件結構裡,包括增加文件對象以便改變所述數字內容的結構。11.如前面任一權利要求所述的方法,其中,將所述對象的數據內容編組到一數據內容結構裡,包括過濾內容以便選擇用於所述內部表示的內容。12.如權利要求1至10中任一權利要求所述的方法,其中,將所述對象的數據內容編組到一數據內容結構裡,包括增加內容以便選擇用於所述內部表示的內容。13.如前面任一權利要求所述的方法,進一步包括處理所述指針以便重新安排所述數據內容和所述文件對象之間的關聯,藉此來自一個源的數據內容可以被來自另一個源的數據內容代替。14.如前面任一權利要求所述的方法,進一步包括一個處理,用於通過組合具有類似屬性的文件對象來壓縮保存在內部表示中的文件對象。15.如前面任一權利要求所述的方法,進一步包括建立一資源表,用於存貯在一數據源內所識別的。16.如權利要求15所述的方法,其中,所述資源包括從由字體、色彩列表、樣式和連結組成的組中被選擇出來的資源。17.如前面任一權利要求所述的方法,包括一個數據傳送處理,其中所述數據內容可以被獨立於所述文件結構存貯或者傳送。18.如前面任一權利要求所述的方法,包括用於壓縮所述數據內容的壓縮處理。19.如前面任一權利要求所述的方法,包括用於對所述數據內容進行編碼的編碼處理。20.如前面任一權利要求所述的方法,包括用於壓縮所述文件結構的壓縮處理。21.如前面任一權利要求所述的方法,包括用於對所述文件結構進行編碼的編碼處理。22.如前面任一權利要求所述的方法,其中,文件對象可以包括表示內容在一文件內的位置的位置信息。23.如權利要求22所述的方法,其中,所述位置信息可以是相對的或者固定的位置信息。24.如前面任一權利要求所述的方法,其中,文件結構定義位置信息,該位置信息表示一個對象相對於其他對象在一文件結構中的位置。25.如前面任一權利要求所述的方法,其中,所述文件結構包括文件對象,這些文件對象具有一組包括空間的、瞬態的和物理的已定義參數。26.如權利要求22至25中任一權利要求所述的方法,其中,獨立於所述內容在一文件中的的結構位置、使得在一內部表示中的關於內容的直觀位置被跟蹤。27.如前面任一權利要求所述的方法,其中,所述數字內容包括從由文本、圖形、音頻、視頻、交互、腳本和音頻-視頻組成的組中被選擇出來的內容。28.如前面任一權利要求所述的方法,進一步包括一個用於輸出數字內容的處理。29.如權利要求28所述的方法,其中,所述用於輸出數字內容的處理包括一個處理,用於以一個表示所述內部表示的格式輸出數字內容。30.如權利要求28或者29所述的方法,其中,所述用於輸出數字內容的處理包括一個處理,用於以與一選定的已知文件格式兼容的格式輸出內容。31.如權利要求29所述的方法,其中,表示所述內部表示的格式可以是基於以下的組中選擇的結構,該組包括二進位數據結構、文本描述、標記文本描述和亮度/色度色彩模式。32.如權利要求29所述的方法,其中,所述表示所述內部表示的格式可以是基於包括從由Unicode、shift-mapping和big-5組成的組中選擇出來的編碼的通用文本編碼模型。33.一種計算機可讀媒體,其上存貯有一種用於表示數字內容的方法的指令,包括接收表示所述數字內容的一數據源,處理所述數據源以便識別在所述源內出現的對象,為每一對象創建一文件對象,所述文件對象表示所遇到的對象的一內部表示,而且所述文件對象將所述對象的結構與所述對象的數據內容分離,將所述文件對象編組到一文件結構裡,所述文件結構表示所述數字內容的結構,將所述對象的數據內容編組到一數據內容結構裡,以及提供一組指針,所述指針將所述文件結構中的所述文件對象與所述數據內容結構中存貯的所述數據內容相關聯。34.一種用於表示數字內容的系統,包括一輸入機構,用於接收表示所述數字內容的一數據源,一文件代理模塊,用於處理所述數據源,以便識別在所述源內出現的對象,並創建一文件對象,該文件對象表示所遇到對象的內部表示,而且該文件對象將對象的結構與對象的數據內容分離,所述文件代理模塊還用於將所述文件對象編組到一文件結構裡,所述文件結構表示所述數字內容的結構,所述文件代理模塊還用於將所述對象的數據內容編組到一數據內容結構裡,以及提供一組指針,所述指針將所述文件結構中的所述文件對象與所述數據內容結構中存貯的所述數據內容相關聯。35.如權利要求34所述的系統,包括若干文件代理模塊,每一文件代理模塊能夠理解一種相應類型的數據源的文件格式。36.如權利要求34所述的系統,包括一文件代理模塊,它能夠理解若干個文件格式。37.如權利要求34至36中任一權利要求所述的系統,進一步包括一組對象類型,所述對象類型表示存在於一數據源中的內容之類型。38.如權利要求36所述的系統,其中,所述文件代理模塊通過處理從由文件內容、文件名、網絡類型、傳輸機制以及盤類型組成的組中被選擇出來的一個特性來識別文件格式。39.如權利要求37所述的方法,其中,所述對象類型組包括位圖對象類型、矢量圖形對象類型、視頻類型、動畫類型、按鈕類型、腳本以及文本對象類型。全文摘要顯示技術,將應用程式的底層的功能性與圖形顯示處理分離,從而消除或減少應用程式的需要以控制設備顯示以及提供用於顯示的圖形用戶界面工具與控制。另外,這樣的系統減少或消除了在處理系統中當顯示由應用程式創建或為應用程式創建的數據(例如文件或視頻信息流)時、對提供該應用程式的需要。因而可以理解的是,在一方面中,這些系統和方法可以顯示內容,包括文件、視頻流或其他的內容,並且將提供用於查看所顯示文件的圖形用戶功能,例如圖像縮放、全景展開或其他此類功能,而無需在顯示該內容的系統上提供底層的應用程式。這些系統和方法優越於現有技術的有益效果包括允許在同樣的工作空間內在同一顯示器上顯示來自不同應用程式的不同類型的內容。文檔編號G06T15/00GK1422408SQ0180795公開日2003年6月4日申請日期2001年4月17日優先權日2000年4月14日發明者馬希德·安瓦爾申請人:皮克塞(研究)有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀