專利名稱:采用表的語言的本地化的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的方面涉及軟件產(chǎn)品。更特別地,本發(fā)明的方面涉及采用本地語言為用戶提供應(yīng)用程序目錄。
相關(guān)技術(shù)領(lǐng)域的描述計(jì)算系統(tǒng)以多種語言形式存在。大量的軟件應(yīng)用程序和操作系統(tǒng)以第一語言被生成,隨后被傳送轉(zhuǎn)換成其他語言。這有時(shí)涉及到應(yīng)用程序和操作系統(tǒng)的本地化。但是,大量的軟件應(yīng)用程序是從來不被翻譯成其他語言的。這些應(yīng)用程序由于種種原因僅以其源語言的形式被保留為可用。有時(shí),本地化的高成本對采用其他語言的應(yīng)用程序的銷售者來說是不被期望遇到的。另一些時(shí)候,程序開發(fā)者可能缺少必需的有效率的翻譯或者將應(yīng)用程序的細(xì)微的地方翻譯成其他語言的能力。這些和其他原因限制了不同語言的用戶對那些沒有被翻譯成其特定語言的軟件的使用。
一種公知的使用多于一種語言來生成應(yīng)用程序的過程如圖3A所示。在步驟301以第一語言生成一個(gè)應(yīng)用程序。之后,在步驟302開發(fā)人員可以將所述應(yīng)用程序翻譯成第二語言。公知的使用多于一種語言來生成應(yīng)用程序的過程通過本地化工具的使用來實(shí)現(xiàn)。任一源文件被本地化并且產(chǎn)品被重新編譯,或者采用不需要所述應(yīng)用程序的重新編譯的工具。
存在一些技術(shù)允許應(yīng)用程序?yàn)榱擞脩舳尤菀椎乇环g成其他語言。首先,一些系統(tǒng)提供向自動機(jī)翻譯詞典的連接,所述自動機(jī)翻譯詞典能夠?qū)崟r(shí)地被獲取以將那些呈現(xiàn)給用戶的文本翻譯成用戶的本地語言。此處,所述自動機(jī)翻譯詞典當(dāng)被應(yīng)用在應(yīng)用程序上時(shí)不具備短語知識。所選擇的譯文典型地與先前被翻譯過的詞匯沒有任何共通之處。這種方法的一個(gè)難點(diǎn)在于僅僅呆板的詞典翻譯通常質(zhì)量很差。源語言的文件(涉及到獲取一份文檔的位置的操作)當(dāng)僅僅使用呆板的詞典翻譯時(shí)可能被翻譯成金屬鍛修工具。
其次,如圖3B所示,一個(gè)應(yīng)用程序304可能包括一個(gè)應(yīng)用程序翻譯源305在其中。應(yīng)用程序304的核心可能以第一語言寫成。但是,當(dāng)文本被輸出到顯示器或打印機(jī)或其他設(shè)備或介質(zhì)上時(shí),所述應(yīng)用程序304從應(yīng)用程序翻譯源305處獲取應(yīng)用程序的翻譯文本。應(yīng)用程序304在翻譯源305的文本中獲得相應(yīng)的條目,所述條目相關(guān)于期望的文本信息以及它們已被翻譯的等價(jià)物。所述被翻譯的等價(jià)物被傳送給圖形設(shè)備接口(GDI)308,呈現(xiàn),并輸出給顯示器309。
圖3B的系統(tǒng)存在三個(gè)問題。首先,除非提供了應(yīng)用程序翻譯源305,否則應(yīng)用程序304的任何具有魯棒性的翻譯都將不存在。其次,某些由應(yīng)用程序304提供的信息可能生成于操作系統(tǒng)當(dāng)中,而不是由應(yīng)用程序304直接生成。如果所述支持應(yīng)用程序304的操作系統(tǒng)被本地化為第一語言并且應(yīng)用程序304被本地化為第二語言,那么用戶將被迫接受既有第一語言又有第二語言的消息。第三,如果應(yīng)用程序不包括翻譯源305而存在,那么潛在用戶可能不具備以其語言使用應(yīng)用程序304的能力,直到生成翻譯表305并且將其集成到應(yīng)用程序304中為止。
簡明概要本發(fā)明的各個(gè)方面致力于上述的一個(gè)或多個(gè)問題。因而,為不同語言的用戶提供應(yīng)用程序。本發(fā)明的方面包括采用操作系統(tǒng)-層的翻譯表以提供信息的翻譯,所述操作系統(tǒng)層的翻譯表可以單獨(dú)使用,也可以和其他翻譯表共同使用。
這些和其他方面將結(jié)合附圖和相關(guān)的實(shí)施例進(jìn)行說明。
附圖簡要說明本發(fā)明不同的方面將結(jié)合附圖進(jìn)行說明。
圖1和2示出了支持本發(fā)明一個(gè)或多個(gè)方面的通用計(jì)算機(jī)環(huán)境。
圖3A和3B示出了現(xiàn)有的應(yīng)用程序本地化的技術(shù)。
圖4示出了應(yīng)用程序,系統(tǒng)資源和GDI之間的相互作用。
圖5A和5B示出了根據(jù)本發(fā)明的方面提供用戶本地化應(yīng)用程序的多種過程。
圖6示出了根據(jù)本發(fā)明的方面的那些可能在標(biāo)準(zhǔn)化過程中發(fā)生不同過程。
圖7示出了根據(jù)本發(fā)明的方面的多種表格以及它們與用戶系統(tǒng)的關(guān)系。
圖8示出了根據(jù)本發(fā)明的方面的多種表格之間的相互作用。
圖9-11示出了根據(jù)本發(fā)明的方面的利用一個(gè)或多個(gè)表格翻譯的應(yīng)用程序的輸出。
圖12示出了根據(jù)本發(fā)明的方面的用戶界面。
附圖的具體描述本發(fā)明的方面涉及提供一種翻譯應(yīng)用程序和操作系統(tǒng)的能力。通過單獨(dú)使用操作系統(tǒng)層的翻譯表或結(jié)合其他翻譯表(包括應(yīng)用程序-特定翻譯表和共有翻譯表)使用,應(yīng)用程序可被其他語言應(yīng)用。
下面分成了若干部分已協(xié)助讀者。所述標(biāo)題包括通用計(jì)算環(huán)境;基于表格的本地化;翻譯表格的定位;操作系統(tǒng)集成;和翻譯表格應(yīng)用的例子。
通用計(jì)算環(huán)境圖1和2表示了本發(fā)明能夠在其中被實(shí)現(xiàn)的合適的操作環(huán)境100和201的例子。所述操作環(huán)境100和201僅僅是合適的操作系統(tǒng)的一小部分例子,并不能對本發(fā)明的功能或應(yīng)用的范圍企圖建議任何限制。另外,那些可能是適合本發(fā)明應(yīng)用的已知計(jì)算機(jī)系統(tǒng),環(huán)境,和/或配置包括,但并不僅限于,個(gè)人計(jì)算機(jī),計(jì)算機(jī)服務(wù)器,手持或便攜式設(shè)備,多處理器系統(tǒng),基于微處理器的系統(tǒng),可編程用戶電子設(shè)備,網(wǎng)絡(luò)PC,小型計(jì)算機(jī),大型計(jì)算機(jī),包括上述所有系統(tǒng)或設(shè)備以及相似產(chǎn)品的分布式計(jì)算環(huán)境。
本發(fā)明的方面將在計(jì)算機(jī)可執(zhí)行指令的通用背景中進(jìn)行描述,例如被一個(gè)或多個(gè)計(jì)算機(jī)或其他設(shè)備執(zhí)行的計(jì)算機(jī)程序模塊。通常,程序模塊包括那些履行特定任務(wù)或?qū)崿F(xiàn)特定的抽象數(shù)據(jù)結(jié)構(gòu)的程序,算法,程序,目標(biāo),組成,數(shù)據(jù)結(jié)構(gòu)等。典型地,在不同的實(shí)施例中,程序模塊的功能性將被根據(jù)需要結(jié)合或分散。
計(jì)算裝置系統(tǒng)100和201典型地包括至少一些計(jì)算機(jī)可讀介質(zhì)的形式。計(jì)算機(jī)可讀介質(zhì)能夠是任何可由服務(wù)器103或者系統(tǒng)201訪問的有效的介質(zhì)。舉例來說,并且并不限于此,計(jì)算機(jī)可讀介質(zhì)可以包括計(jì)算機(jī)存儲介質(zhì)和通訊介質(zhì)。計(jì)算機(jī)存儲介質(zhì)包括易失或非易失的,可移動的和不可移動的介質(zhì),所述介質(zhì)以信息存儲的任何方法或者技術(shù)實(shí)現(xiàn),例如計(jì)算機(jī)可讀取指令,數(shù)據(jù)結(jié)構(gòu),程序模塊或者其他數(shù)據(jù)。計(jì)算機(jī)存儲介質(zhì)包括,但是并不限于,RAM,ROM,EEPROM,閃存或者其他存儲技術(shù),CD-ROM,數(shù)字化視頻光盤(DVD)或者其他光學(xué)存儲設(shè)備,盒式磁帶,磁帶,磁盤存儲或其他磁性存儲設(shè)備,或其他能夠用于存儲所需信息和能夠由服務(wù)器103或系統(tǒng)201所訪問的任何介質(zhì)。通訊介質(zhì)典型地包括計(jì)算機(jī)可讀指令,數(shù)據(jù)結(jié)構(gòu),程序模塊或者其他已調(diào)制的數(shù)據(jù)信號的數(shù)據(jù),例如載波或其他傳輸機(jī)制,并且包括任何信息傳輸介質(zhì)。短語“已調(diào)制的數(shù)據(jù)信號”表示一個(gè)具有一個(gè)或多個(gè)它的特征集或者以編碼信號中信息的方式變化的信號。舉例來說,但并不限于此,通訊介質(zhì)包括有線介質(zhì)例如一個(gè)有線網(wǎng)絡(luò)或者直接有線連接,和無線介質(zhì)例如聲波,RF,紅外線以及其他無線介質(zhì)。上述的結(jié)合也應(yīng)該被包括在計(jì)算機(jī)可讀介質(zhì)的范圍內(nèi)。
如圖2所示,是一個(gè)能夠?qū)崿F(xiàn)本發(fā)明的方面的示例性系統(tǒng),包括了一個(gè)計(jì)算裝置,例如裝置201。在所述的最基本的配置中,裝置201典型地包括一個(gè)處理單元204和存儲器203。根據(jù)所述的精確配置和計(jì)算裝置的類型,存儲器203可以是易失的(例如RAM),非易失的(例如ROM,閃存等)或者兩者結(jié)合的一些實(shí)例。另外,裝置201也可以具有大規(guī)模存儲(可移除和/或不可移除)例如磁性或光盤或磁帶205-206。同樣地,裝置201也可以具備輸入裝置例如208(包括一個(gè)鼠標(biāo),輸入筆,鍵盤,軌跡球,以及其他相似物品)和/或輸出裝置207例如顯示屏以及相似物。裝置201的其他方面可能包括網(wǎng)絡(luò)連接器209利用有線或無線介質(zhì)210連接到其他的設(shè)備,計(jì)算機(jī),網(wǎng)絡(luò),服務(wù)器,等等。所有上述設(shè)備都是本領(lǐng)域公知的并且在此不需要被深入討論。
基于表格的本地化利用本發(fā)明的方面,應(yīng)用程序可以為用戶提供翻譯。在本發(fā)明的某些方面,本發(fā)明的操作可被描繪成在一個(gè)或多個(gè)層次發(fā)生應(yīng)用程序?qū)雍?或操作系統(tǒng)層。
所述操作系統(tǒng)可以提供一個(gè)引擎,所述引擎通過比較送往系統(tǒng)資源加載或GDI的截取文本和一個(gè)翻譯文本的存儲表來允許快速翻譯。所述存儲表可分別具備每一個(gè)短語的譯文和/或可以僅僅包括文本的串。所述串可以是在菜單/按鈕/對話框及相似事務(wù)中呈現(xiàn)給用戶的整個(gè)內(nèi)容或句子。具備文本串的相關(guān)譯文的一個(gè)優(yōu)點(diǎn)是在所述串中的短語的意思被保留了。通過這種方式,結(jié)果譯文將一直與源文本相應(yīng)。
所述引擎也可以建立在操作系統(tǒng)或其他地方。如果某處沒有指定翻譯表,引擎就將系統(tǒng)資源加載或GDI的截取文本調(diào)用傳給它們可能的目的地。將引擎放置在操作系統(tǒng)層的一個(gè)優(yōu)點(diǎn)是如果提供了其應(yīng)用程序的所有譯文,那么應(yīng)用程序開發(fā)者就可以較少地調(diào)整他們的編碼。在一些情況下,應(yīng)用程序開發(fā)者可能希望僅僅使用操作系統(tǒng)能夠訪問的翻譯表。在另一些情況下,應(yīng)用程序開發(fā)者可能需要系統(tǒng)提供附加或者可選的翻譯表以完成下述工作a.覆蓋附加的語言或方言;b.為一些術(shù)語提供可選擇的翻譯;以及c.為與操作系統(tǒng)配合的翻譯表沒有提到的特殊應(yīng)用程序的術(shù)語提供翻譯。
圖4提供了系統(tǒng)資源加載401和系統(tǒng)GDI403,它們都與應(yīng)用程序402交換信息。應(yīng)用程序402的資源加載過程由系統(tǒng)資源加載模塊處理。對資源加載應(yīng)用程序界面的調(diào)用(例如,加載資源API或?qū)ふ彝獠抠Y源或者內(nèi)部資源),其可以由應(yīng)用程序直接組成或由系統(tǒng)為應(yīng)用程序間接進(jìn)行,為了由系統(tǒng)資源加載401處理所述應(yīng)用程序并且最終結(jié)果將被返回給應(yīng)用程序402。
重定位引擎允許截取片段與用戶接口資源單元內(nèi)容的最終重定向數(shù)據(jù)在應(yīng)用程序402,系統(tǒng)資源加載401和系統(tǒng)GDI403之間進(jìn)行交換。
所述翻譯表(包括操作系統(tǒng)翻譯表和應(yīng)用程序翻譯表)利用引擎的功能提供一個(gè)可選的數(shù)據(jù)源,所述數(shù)據(jù)源包括所期望的目標(biāo)語言的UI單元。所述操作系統(tǒng)的翻譯表可包括普通操作系統(tǒng)的項(xiàng)目。它也可以包括或不包括通用的應(yīng)用程序的術(shù)語。為了簡便,是否包括通用的程序的術(shù)語的操作系統(tǒng)的翻譯表被表示為“核心翻譯表”。應(yīng)用程序開發(fā)者可以通過包括應(yīng)用程序特定翻譯表來增補(bǔ)操作系統(tǒng)的翻譯表。
翻譯表的自然特性可以是從一個(gè)單一源語言到一個(gè)單一目標(biāo)語言的單向映射??蛇x地,所述翻譯表可可以使在源語言和目標(biāo)語言之間的雙向映射。更進(jìn)一步,翻譯表可以是一個(gè)單一源語言到多個(gè)目標(biāo)語言的映射(單向或雙向)。對目標(biāo)語言的指定幫助確定采用哪種目標(biāo)語言。
圖5A和圖5B顯示了根據(jù)本發(fā)明的一個(gè)方面的翻譯表的使用。在圖5A中,在步驟501中一個(gè)應(yīng)用程序開始與系統(tǒng)資源加載或者GDI交換數(shù)據(jù)。在步驟502中,從步驟501傳來的數(shù)據(jù)被所述引擎截取。在步驟503中,所述數(shù)據(jù)被簡化和規(guī)范。在步驟504,所述數(shù)據(jù)在目標(biāo)語言的應(yīng)用程序翻譯表中被查找。如果步驟503中的數(shù)據(jù)與翻譯表502中的信息匹配(步驟505),那么在步驟506,所述數(shù)據(jù)原始的格式被恢復(fù)。所述被恢復(fù)的原始格式的信息被存儲以便將來的應(yīng)用。在步驟507窗口和對話框?qū)⒈恢匦旅枥L大小以適應(yīng)翻譯完畢的內(nèi)容。所述處理返回到應(yīng)用程序的步驟501。
如果在步驟505中沒有發(fā)現(xiàn)匹配(由于沒有匹配或者沒有應(yīng)用程序的翻譯表存在),那么在步驟508中,所述系統(tǒng)針對目標(biāo)語言的核心翻譯表查找數(shù)據(jù)。在步驟509,如果發(fā)現(xiàn)一個(gè)匹配,那么系統(tǒng)進(jìn)行步驟506并且繼續(xù)從該步驟向下。如果在步驟509沒有發(fā)現(xiàn)匹配,那么應(yīng)用程序被重定向到資源加載或GDI以便進(jìn)行常規(guī)處理。
圖5B顯示了圖5A的一個(gè)調(diào)整,其中圖5A存在一個(gè)公共翻譯表。如果在步驟509沒有發(fā)現(xiàn)匹配,那么在步驟511,數(shù)據(jù)被依照公共建立的翻譯表進(jìn)行查找。如果在步驟512發(fā)現(xiàn)匹配,那么進(jìn)行步驟506和處理如步驟5A那樣繼續(xù)。如果在步驟512沒有發(fā)現(xiàn)匹配,那么所述處理利用機(jī)器翻譯(例如,實(shí)時(shí)字典翻譯)513。如果在步驟514中翻譯成功,那么處理返回到步驟506并且繼續(xù)。如果在步驟514中沒有發(fā)現(xiàn)匹配,在步驟510中所述處理重定向數(shù)據(jù)。
在圖6中顯示了步驟503更詳細(xì)的細(xì)節(jié)。簡化和規(guī)范處理包括下面的一個(gè)或多個(gè)a.統(tǒng)一大小寫(602)-改變所有數(shù)據(jù)的大小寫到大寫或小寫;b.移除控制字符(603)-例如,“&open...\tCrtl+O”可能被替換成“open”;c.利用替換交叉引用字符串(604)-具備替換變量的字符串資源可以在資源加載數(shù)據(jù)交換和顯示的GDI之間交叉引用。
在如圖6所述的簡化和規(guī)范的步驟503中對數(shù)據(jù)生成的結(jié)果,改變和對改變的描述可被存儲在存儲裝置605中。例如,從“Open”到“open”的變化,可以被存儲為或者“Open”到“open”或者“O”到“o”或者一些第一字符能夠變換為小寫的表示。同樣地,對控制字符的移除和交叉引用也可以被存儲已備將來的應(yīng)用。
重新回到圖5B,步驟511中公共建立的翻譯表可以由實(shí)體生成,在所述開發(fā)者沒有生成一個(gè)應(yīng)用程序翻譯表時(shí)被使用??蛇x地,公眾可以開發(fā)翻譯表以補(bǔ)充和增加已有的翻譯表。例如,在某些情況下用戶可以決定提供的翻譯表在某些情況下是不足以使用的。公眾可以利用所述應(yīng)用程序生成一個(gè)翻譯表。用戶能夠指定翻譯表應(yīng)用的順序。在這些有公眾生成翻譯表的例子中,用戶可以指定公眾翻譯表能夠優(yōu)先于應(yīng)用程序特定的翻譯表或核心翻譯表而使用。
公眾可以提供公眾建立的翻譯表,例如,通過公共術(shù)語表中公眾的努力為沒有覆蓋的術(shù)語提供新的解釋或者為新語言提供翻譯。如上所述,圖5B中應(yīng)用程序利用圖5A中的處理可以勝任到另一個(gè)語言的本地化是可選擇的。
機(jī)器翻譯513可以是或者不是一個(gè)選項(xiàng)。在一些例子中,機(jī)器翻譯字典可能不存在中間語言源和目標(biāo)語言。
步驟506可以包括通過源或者目標(biāo)語言重設(shè)置熱鍵。利用源語言重新生成熱鍵的一個(gè)好處是在應(yīng)用程序和操作系統(tǒng)之間的聯(lián)系被保留了。
在步驟502中能夠截取數(shù)據(jù)交換的引擎可能被以多種方式實(shí)現(xiàn),包括動態(tài)連接庫和數(shù)據(jù)庫的結(jié)合。例如,動態(tài)連接庫可能對下面一個(gè)或多個(gè)任務(wù)進(jìn)行響應(yīng)a.識別被核準(zhǔn)/和注冊的應(yīng)用程序。
b.截取在所述應(yīng)用程序和系統(tǒng)的資源加載和/或GDI之間交換的數(shù)據(jù)。
c.資源簡化為了提高命中率以及保持翻譯表的較小尺寸,所述引擎所述執(zhí)行簡化和規(guī)范步驟503。步驟503的例子進(jìn)一步包括從一個(gè)字符串中移除空格,新行,省略號,冒號,分號,加速鍵等等。并且,替代了“&open...\tCrtl+O”,一個(gè)字符串可以被調(diào)整為“Open”或者“open”。
d.自動改變尺寸自動調(diào)整對話框和目標(biāo)應(yīng)用程序的窗口的尺寸以防止翻譯所造成的文本和控制的截止。所述改變尺寸可以在運(yùn)行時(shí)間通過加入垂直和水平補(bǔ)白到窗口尺寸中被完成。為了這樣,百分比的增加值,字體名,和字體大小可以為了所述語言的任何一個(gè)被定義。所述值被嚴(yán)格編碼和更改。默認(rèn)值的例子可以包括i. 大小的增加30%。
ii.字體名微軟無襯線鉛字。
iii.字體大小8。
如果采用微軟視窗操作系統(tǒng),需要生成一個(gè)登陸密碼,例如在HKEY_CURRENT_USER\Sofeware\MAT\來存儲一個(gè)或多個(gè)下面的值a.用戶希望發(fā)布應(yīng)用程序的源語言的說明書;b.用戶希望發(fā)布應(yīng)用程序的目標(biāo)語言的說明書;c.重確定大小制定應(yīng)用程序自動確定大小的比例;d.字體大小應(yīng)用程序?qū)嶋H應(yīng)用的字體大??;和e.利用圖5A和圖5B查找的應(yīng)用程序資源。
為了另外的實(shí)現(xiàn),可以使用不同的存儲位置。
在某些情況下,例如采用non-Unicode應(yīng)用程序,本地匹配系統(tǒng)需要用戶期望的語言的用戶接口單元的合適的顯示。在這些情況下,如果目標(biāo)語言沒有被現(xiàn)有配置的本地化系統(tǒng)處理,系統(tǒng)可能試圖激活本地化的匹配系統(tǒng)。這些過程可出現(xiàn)在用戶背景中,當(dāng)目標(biāo)引用程序列表被預(yù)定義并且non-Unicode應(yīng)用程序被識別時(shí)。
所述引擎的數(shù)據(jù)庫組成包括含有應(yīng)用程序列表也包括non-Unicode應(yīng)用程序標(biāo)記的文件。
系統(tǒng)為用戶提供用戶接口以調(diào)整數(shù)據(jù)翻譯是如何被進(jìn)行的。圖12示出了用戶接口,所述用戶接口提供這些包括是否一個(gè)應(yīng)用程序被翻譯,源和目標(biāo)語言以及放大窗口的大小的一些選項(xiàng)的選項(xiàng)。進(jìn)一步,默認(rèn)的處理可以發(fā)布為與運(yùn)行的操作系統(tǒng)相同的語言的有效的應(yīng)用程序。
在此,終端用戶能夠決定是否本地化目標(biāo)語言或者以一種可選的語言發(fā)布所述應(yīng)用程序。另外,如上,重新確定窗口和對話框的大小值以補(bǔ)償由翻譯引起的文本大小的增加。更進(jìn)一步的編輯可以被提供給開發(fā)者以允許他們抽取他們的應(yīng)用程序的UI部件并且為他們提供新的/可選的翻譯。所述編輯允許開發(fā)者生成翻譯表的二進(jìn)制文件以為其程序提供導(dǎo)航。
翻譯表的本地化對翻譯表的本地化是不同的。圖7顯示了翻譯表可以被本地化的不同的例子。應(yīng)用程序翻譯表701,核心翻譯表702和公共翻譯表703可以被在本地和遠(yuǎn)距離本地化,如我的分界線708所示。遠(yuǎn)程地可能包括通過internet或其他遠(yuǎn)距離定位。
具備處理器706的用戶系統(tǒng)704可以不同方式使用翻譯表701-703。首先,用戶系統(tǒng)可直接獲取翻譯表并且在運(yùn)行應(yīng)用程序時(shí)(如在翻譯表701-703和系統(tǒng)704中的箭頭)使用它們。其次,翻譯表可被本地裝入到系統(tǒng)704到705并且被直接獲取。第三,所述翻譯表可被放置在如本地翻譯表707的本地地點(diǎn)。這三種方法可以以不同的組合來使用。
操作系統(tǒng)集成圖8顯示了所述操作系統(tǒng)的引擎是如何幫助提供翻譯的。具備或不具備應(yīng)用程序翻譯表802的應(yīng)用程序801發(fā)送向下的信息流。所述信息被作為操作系統(tǒng)803的一部分而運(yùn)行的數(shù)據(jù)截取引擎804所截取。數(shù)據(jù)截取引擎804通過使用核心翻譯表805與從應(yīng)用程序801傳來的數(shù)據(jù)協(xié)同工作,并且發(fā)送翻譯完的向下的信息流至GDI806(或者系統(tǒng)資源加載,未示出)。翻譯結(jié)果的信息可以被發(fā)送到輸出807(例如,顯示器,打印機(jī),打印機(jī)驅(qū)動,等等)。
翻譯表應(yīng)用的例子圖9-11顯示了被翻譯的應(yīng)用程序的不同例子。在圖9中,一個(gè)采用語言L1的應(yīng)用程序901可以被語言L1使用。同時(shí),其也可以利用核心翻譯表903被翻譯成語言LN904。公共表905和實(shí)時(shí)翻譯906也可以被應(yīng)用。
在圖10中應(yīng)用程序翻譯表1001被加入到圖9的例子中。
在圖11中,系統(tǒng)僅僅使用了公共表905和實(shí)時(shí)翻譯906來翻譯應(yīng)用程序901。
本發(fā)明的方面被以此處描述的實(shí)施例來描述。在附加的權(quán)利要求中的范圍和精神內(nèi)的眾多其他的實(shí)施例,修改和變化對本領(lǐng)域普通技術(shù)人員來說通過此處揭露的內(nèi)容都將發(fā)生。
權(quán)利要求
1.一種修改信息以從源語言變換為目標(biāo)語言的方法包括步驟截取發(fā)送往系統(tǒng)資源或GDI之一的數(shù)據(jù);比較所述截取數(shù)據(jù)和核心翻譯表的數(shù)據(jù);基于所述比較步驟將所述截取數(shù)據(jù)替換為所述核心翻譯表中的數(shù)據(jù)。
2.如權(quán)利要求1所述的方法,進(jìn)一步包括步驟基于所述比較步驟重定向所述截取數(shù)據(jù)到所述系統(tǒng)資源或GDI之一。
3.如權(quán)利要求1所述的方法,進(jìn)一步包括步驟比較所述截取數(shù)據(jù)和應(yīng)用徎序翻譯表的數(shù)據(jù);和將所述截取數(shù)據(jù)替換為所述應(yīng)用程序翻譯表中的數(shù)據(jù)。
4.如權(quán)利要求1所述的方法,進(jìn)一步包括步驟簡化和規(guī)范所述截取數(shù)據(jù)。
5.如權(quán)利要求4所述的方法,其中所述簡化和規(guī)范步驟進(jìn)一步包括步驟統(tǒng)一所述截取數(shù)據(jù)的大小寫。
6.如權(quán)利要求4所述的方法,其中所述簡化和規(guī)范步驟進(jìn)一步包括步驟移除控制字符。
7.如權(quán)利要求4所述的方法,其中所述簡化和規(guī)范步驟進(jìn)一步包括步驟交叉引用在資源加載和GDI之間的所述截取數(shù)據(jù)。
8.如權(quán)利要求1所述的方法,進(jìn)一步包括步驟將翻譯數(shù)據(jù)重新存儲為所述截取數(shù)據(jù)的格式。
9.如權(quán)利要求1所述的方法,進(jìn)一步包括步驟重新確定顯示項(xiàng)目的大小以顯示所述翻譯數(shù)據(jù)。
10.如權(quán)利要求1所述的方法,進(jìn)一步包括步驟比較所述截取數(shù)據(jù)和公共建立的翻譯表的數(shù)據(jù);和將所述截取數(shù)據(jù)替換為所述公共建立的翻譯表中的數(shù)據(jù)。
11.如權(quán)利要求1所述的方法,進(jìn)一步包括步驟利用機(jī)器翻譯處理所述截取數(shù)據(jù)。
12.一種修改信息以從源語言變換為目標(biāo)語言的系統(tǒng)包括截取發(fā)送往系統(tǒng)資源或GDI之一的數(shù)據(jù)的裝置;比較所述截取數(shù)據(jù)和核心翻譯表的數(shù)據(jù)的裝置;基于來自所述比較裝置的結(jié)果將所述截取數(shù)據(jù)替換為所述核心翻譯表中的數(shù)據(jù)的裝置。
13.如權(quán)利要求12所述的系統(tǒng),進(jìn)一步包括基于來自所述比較裝置的結(jié)果重定向所述截取數(shù)據(jù)到所述系統(tǒng)資源或所述GDI之一的裝置。
14.如權(quán)利要求12所述的系統(tǒng),進(jìn)一步包括比較所述截取數(shù)據(jù)和應(yīng)用程序翻譯表的數(shù)據(jù)的裝置;和將所述截取數(shù)據(jù)替換為所述應(yīng)用程序翻譯表中的數(shù)據(jù)的裝置。
15.如權(quán)利要求12所述的系統(tǒng),進(jìn)一步包括步驟簡化和規(guī)范所述截取數(shù)據(jù)的裝置。
16.如權(quán)利要求15所述的系統(tǒng),其中所述簡化和規(guī)范的裝置進(jìn)一步包括統(tǒng)一所述截取數(shù)據(jù)的大小寫的裝置。
17.如權(quán)利要求15所述的系統(tǒng),其中所述簡化和規(guī)范的裝置進(jìn)一步包括移除控制字符的裝置。
18.如權(quán)利要求15所述的系統(tǒng),其中所述簡化和規(guī)范的裝置進(jìn)一步包括交叉引用在所述資源加載和所述GDI之間的所述截取數(shù)據(jù)的裝置。
19.如權(quán)利要求12所述的系統(tǒng),進(jìn)一步包括將翻譯數(shù)據(jù)重新存儲為所述截取數(shù)據(jù)格式的裝置。
20.如權(quán)利要求12所述的系統(tǒng),進(jìn)一步包括重新確定顯示項(xiàng)目的大小以顯示所述翻譯數(shù)據(jù)的裝置。
21.如權(quán)利要求12所述的系統(tǒng),進(jìn)一步包括比較所述截取數(shù)據(jù)和公共建立的翻譯表的數(shù)據(jù)的裝置;和將所述截取數(shù)據(jù)替換為所述公共建立的翻譯表中的數(shù)據(jù)的裝置。
22.如權(quán)利要求12所述的系統(tǒng),進(jìn)一步包括利用機(jī)器翻譯處理所述截取數(shù)據(jù)的裝置。
23.一種提供翻譯的系統(tǒng),包括一個(gè)運(yùn)行操作系統(tǒng)的處理器,所述操作系統(tǒng)與至少一個(gè)核心翻譯表相應(yīng),所述處理器截取發(fā)送往系統(tǒng)資源或GDI之一的數(shù)據(jù);比較所述截取數(shù)據(jù)和核心翻譯表的數(shù)據(jù);基于所述比較結(jié)果輸出所述翻譯數(shù)據(jù);一個(gè)接收所述已翻譯數(shù)據(jù)并輸出所述已翻譯數(shù)據(jù)的輸出裝置。
24.如權(quán)利要求23的系統(tǒng),進(jìn)一步包括一個(gè)存儲器,存儲有所述至少一個(gè)核心翻譯表,所述存儲器可以被所述處理器訪問以獲得所述翻譯數(shù)據(jù)。
全文摘要
一種為應(yīng)用程序提供翻譯的系統(tǒng)和方法,其可以具備或不具備所描述的相關(guān)翻譯表。核心翻譯表可以被用于或不用于與應(yīng)用程序翻譯表和公共翻譯表一同使用。
文檔編號G06F7/60GK1702621SQ200510078309
公開日2005年11月30日 申請日期2005年4月20日 優(yōu)先權(quán)日2004年4月22日
發(fā)明者B·C·雷蒂格, H·歐雅瑪, H·連, H·普納賽爾, J·R·法爾克納, M·祖雷西, R·素旺納舒克, X·臧, Y·郭, Z·李 申請人:微軟公司