本發(fā)明涉及計(jì)算機(jī)
技術(shù)領(lǐng)域:
:,尤其涉及一種數(shù)據(jù)處理的方法及裝置。
背景技術(shù):
::目前,文本信息仍是網(wǎng)頁(yè)最主要的內(nèi)容,隨著層疊樣式表(CascadingStyleSheets,CSS)技術(shù)的不斷成熟,web字體逐漸成為關(guān)注的話題。為了使網(wǎng)頁(yè)達(dá)到不同的豐富多彩的技術(shù)效果,對(duì)應(yīng)的出現(xiàn)多種多樣的字體類型,尤其是對(duì)于中文,字體類型更是多種多樣,而且也不斷有新的字體類型出現(xiàn),因此瀏覽器在加載網(wǎng)頁(yè)時(shí),有可能會(huì)遇到加載的網(wǎng)頁(yè)中包含新的字體類型,而瀏覽器不支持新的字體類型即沒有新字體類型對(duì)應(yīng)的字體文件的情況,這時(shí)需要瀏覽器在加載網(wǎng)頁(yè)的同時(shí)也下載與新字體對(duì)應(yīng)的字體文件,從而將網(wǎng)頁(yè)中包含的新字體正確的顯示。在下載新字體類型對(duì)應(yīng)的字體文件時(shí),由于字體文件通常為包含所有文本對(duì)應(yīng)的新字體,因此字體文件很大,比如可以達(dá)到4M甚至更大,而字體文件越大導(dǎo)致瀏覽器加載的速度越慢,尤其在網(wǎng)絡(luò)狀態(tài)不好的情況下,下載字體文件的效率更低,進(jìn)而導(dǎo)致瀏覽器加載網(wǎng)頁(yè)的效率更低。技術(shù)實(shí)現(xiàn)要素:鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的數(shù)據(jù)處理的方法及裝置。為解決上述技術(shù)問題,一方面,本發(fā)明提供了一種數(shù)據(jù)處理的方法,包括:獲取文本,所述文本為網(wǎng)頁(yè)中的文本;在所述文本對(duì)應(yīng)的原始字體文件中查找所述文本中所有字符對(duì)應(yīng)的字形數(shù)據(jù),所述原始字體文件為包含與所述文本中字符同類型的所有字符的字形數(shù)據(jù);將所述文本中所有字符的字形數(shù)據(jù)按照所述原始字體文件的規(guī)范寫入新的字體文件,得到目標(biāo)字體文件,以使瀏覽器下載目標(biāo)字體文件。另一方面,本發(fā)明提供了一種數(shù)據(jù)處理的裝置,包括:獲取單元,用于獲取文本,所述文本為網(wǎng)頁(yè)中的文本;字形查找單元,用于在所述文本對(duì)應(yīng)的原始字體文件中查找所述文本中所有字符對(duì)應(yīng)的字形數(shù)據(jù),所述原始字體文件為包含與所述文本中字符同類型的所有字符的字形數(shù)據(jù);寫入單元,用于將所述文本中所有字符的字形數(shù)據(jù)按照所述原始字體文件的規(guī)范寫入新的字體文件,得到目標(biāo)字體文件,以使瀏覽器下載目標(biāo)字體文件并將所述文本正確顯示在網(wǎng)頁(yè)中。借由上述技術(shù)方案,本發(fā)明提供的數(shù)據(jù)處理的方法及裝置,能夠首先獲取文本,文本為網(wǎng)頁(yè)中的文本;其次,在文本對(duì)應(yīng)的原始字體文件中查找文本中所有字符對(duì)應(yīng)的字形數(shù)據(jù),其中,原始字體文件為包含與所述文本中字符同類型的所有字符的字形數(shù)據(jù);最后,將所述文本中所有字符的字形數(shù)據(jù)按照原始字體文件的規(guī)范寫入新的字體文件,得到目標(biāo)字體文件,以使瀏覽器下載目標(biāo)字體文件并將所述文本正確顯示在網(wǎng)頁(yè)中。與現(xiàn)有技術(shù)相比,本發(fā)明能夠?qū)⑽谋緦?duì)應(yīng)的原始字體文件中僅包含所述文本中所有字符的字形數(shù)據(jù)重新組成新的字體文件即目標(biāo)字體文件,由于目標(biāo)字體文件中僅包含上述文本中的所有字符的字形數(shù)據(jù),因此相比于原始字體文件大大減小了文件本身的大小,因此能夠提高瀏覽器下載字體文件的速度,進(jìn)而提高網(wǎng)頁(yè)的加載效率。上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式。附圖說明通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:圖1示出了本發(fā)明實(shí)施例提供的一種數(shù)據(jù)處理的方法流程圖;圖2示出了本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)處理的方法流程圖;圖3示出了本發(fā)明實(shí)施例提供的一種數(shù)據(jù)處理的裝置的組成框圖;圖4示出了本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)處理的裝置的組成框圖。具體實(shí)施方式下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。為解決現(xiàn)有包含新字體類型的網(wǎng)頁(yè)加載效率低的問題,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)處理的方法,如圖1所示,該方法包括:首先,需要說明的是本實(shí)施例的執(zhí)行主體為一個(gè)插件,通常是瀏覽器的一個(gè)插件。101、獲取文本。本實(shí)施例中的文本主要是指網(wǎng)頁(yè)中的文本,并且引用網(wǎng)頁(yè)的瀏覽器等本身是不包含該文本所屬的字體類型,比如新字體類型或者特殊字體等組成的文本。新字體類型通常指充滿動(dòng)畫感的字體、外形為動(dòng)物頭像的字體、圖片制作的有趣字體等,特殊字體可能為甲骨文等。其中上述文本可能是網(wǎng)頁(yè)中的全部文本或是網(wǎng)頁(yè)中的一部分文本。另外需要說明的是,獲取文本不是直接從網(wǎng)頁(yè)中獲取文本,而是在網(wǎng)頁(yè)中的文本還沒有通過引用網(wǎng)頁(yè)的瀏覽器等將其顯示之前,獲取將要在網(wǎng)頁(yè)中顯示的上述文本。獲取文本是后續(xù)步驟中獲取文本中字符對(duì)應(yīng)的字形數(shù)據(jù)的必要準(zhǔn)備。102、在文本對(duì)應(yīng)的原始字體文件中查找文本中所有字符對(duì)應(yīng)的字形數(shù)據(jù)。當(dāng)瀏覽器遇到引用的網(wǎng)頁(yè)中包含步驟101中的文本時(shí),操作系統(tǒng)會(huì)暴露對(duì)應(yīng)的應(yīng)用程序接口(ApplicationProgramInterface,API),使瀏覽器選取工具來對(duì)上述文本進(jìn)行正確的處理。本實(shí)施例是提前設(shè)置預(yù)設(shè)后綴名,使瀏覽器讀到預(yù)設(shè)后綴名的文件時(shí),將其傳回給插件,而不是直接對(duì)預(yù)設(shè)后綴名的文件進(jìn)行下載。將原始字體文件傳回給插件的過程可以是有多種形式,常見的形式為數(shù)據(jù)流的形式等。其中預(yù)設(shè)后綴名的文件為與文本對(duì)應(yīng)的原始字體文件的后綴名。當(dāng)插件接收到原始字體文件后,能夠按照原始字體文件的需要讀原始字體文件,并從中提取出上述文本中所有字符對(duì)應(yīng)的字形數(shù)據(jù)。由于原始字體文件中包含的是與文本中字符同類型的所有字符的字形數(shù)據(jù),而本實(shí)施例中需要使用的只是步驟101中涉及的文本中所有字符的字形數(shù)據(jù),因此只需要從原始字體文件中提取符合需求的字形數(shù)據(jù)。103、將文本中所有字符的字形數(shù)據(jù)按照原始字體文件的規(guī)范寫入新的字體文件,得到目標(biāo)字體文件。將由步驟102得到的所有字符的字形數(shù)據(jù)按照原始字體文件的規(guī)范編譯成新的字體文件,記作目標(biāo)字體文件。每種字體文件都有對(duì)應(yīng)的文件構(gòu)成、文件讀取等規(guī)范,比如字體文件(TrueTypeFont,TTF)文件,它是由微軟公司和蘋果公司共同推出的一種字體文件格式,其中TTF文件的文件規(guī)范包括:字體目錄中包含字體格式的版本號(hào)和幾個(gè)表,每個(gè)表都有一個(gè)tableentry結(jié)構(gòu)項(xiàng);并且所有數(shù)據(jù)使用big-endian編碼,最高位字節(jié)在最前面;每個(gè)表中都保存了同的邏輯信息,比如圖元數(shù)據(jù)表、字符到圖元的映射表等;等更多的規(guī)范。不同的字體文件通常對(duì)應(yīng)不同的文件規(guī)范。為了不符合原始字體文件的規(guī)范,因此將選擇將從原始字體文件中提取的字形數(shù)據(jù)還按照原始字體文件的規(guī)范進(jìn)行編譯得到目標(biāo)字體文件。由于按照原始字體文件規(guī)范得到的目標(biāo)字體文件中僅包含上述文本中所有字符的字形數(shù)據(jù),相當(dāng)于將原始字體文件中的字形數(shù)據(jù)進(jìn)行了過濾,得到了僅包含需要的字形數(shù)據(jù)的字體文件,因此在瀏覽器下載字體文件時(shí)大大的減小了下載文件的大小,從而加快了下載的速度,并且在保證網(wǎng)頁(yè)包含的上述文本正確顯示的前提下提高了網(wǎng)頁(yè)的加載速度。本發(fā)明實(shí)施例提供的數(shù)據(jù)處理的方法,能夠首先獲取文本,文本為網(wǎng)頁(yè)中的文本;其次,在文本對(duì)應(yīng)的原始字體文件中查找文本中所有字符對(duì)應(yīng)的字形數(shù)據(jù),其中,原始字體文件為包含與所述文本中字符同類型的所有字符的字形數(shù)據(jù);最后,將所述文本中所有字符的字形數(shù)據(jù)按照原始字體文件的規(guī)范寫入新的字體文件,得到目標(biāo)字體文件,以使瀏覽器下載目標(biāo)字體文件并將所述文本正確顯示在網(wǎng)頁(yè)中。與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例能夠?qū)⑽谋緦?duì)應(yīng)的原始字體文件中僅包含所述文本中所有字符的字形數(shù)據(jù)重新組成新的字體文件即目標(biāo)字體文件,由于目標(biāo)字體文件中僅包含上述文本中的所有字符的字形數(shù)據(jù),因此相比于原始字體文件大大減小了文件本身的大小,因此能夠提高瀏覽器下載字體文件的速度,進(jìn)而提高網(wǎng)頁(yè)的加載效率。進(jìn)一步的,作為對(duì)圖1所示方法的細(xì)化及擴(kuò)展,本發(fā)明另一實(shí)施例還給出了一種數(shù)據(jù)處理的方法。如圖2所示,該方法包括:201、獲取文本。本實(shí)施例中的文本主要是指網(wǎng)頁(yè)中的文本,并且引用網(wǎng)頁(yè)的瀏覽器等本身是不包含該文本所屬的字體類型,比如新字體類型或者特殊字體等組成的文本。新字體類型通常指充滿動(dòng)畫感的字體、外形為動(dòng)物頭像的字體、圖片制作的有趣字體等,特殊字體可能為甲骨文等。其中上述文本可能是網(wǎng)頁(yè)中的全部文本或是網(wǎng)頁(yè)中的一部分文本。其中獲取文本具體的包括兩種途徑:第一種途徑,從網(wǎng)頁(yè)對(duì)應(yīng)的超文本標(biāo)記語(yǔ)言(HyperTextMarkupLanguage,HTML)文件中提取文本。具體的實(shí)現(xiàn)方式如下:首先,查找瀏覽器設(shè)置的HTML元素的選擇器。瀏覽器在傳送原始字體文件的同時(shí),會(huì)提前設(shè)置需要在原始字體文件中查找的文本所對(duì)應(yīng)的HTML元素,文本包含在對(duì)應(yīng)的HTML元素中,而HTML元素需要通過對(duì)應(yīng)的選擇器進(jìn)行選擇,因此需要查找對(duì)應(yīng)的HTML元素對(duì)應(yīng)的選擇器。然后,根據(jù)選擇器提取對(duì)應(yīng)HTML元素中的文本。根據(jù)查找到的HTML元素對(duì)應(yīng)的選擇器定位到對(duì)應(yīng)HTML元素中的文本,并提取該文本。第二種途徑,對(duì)于一些用戶可以輸入文本的網(wǎng)站,比如各種論壇、微博等,輸入的文本中也會(huì)存在對(duì)應(yīng)的瀏覽器不支持的字體類型的情況,這時(shí)需要從外部直接輸入的文本中提取步驟201涉及的文本。獲取文本是后續(xù)步驟中獲取文本中字符對(duì)應(yīng)的字形數(shù)據(jù)的必要準(zhǔn)備。202、對(duì)文本中的每個(gè)字符按照預(yù)設(shè)編碼規(guī)則進(jìn)行編碼,得到對(duì)應(yīng)的字符編碼。本實(shí)施例中,預(yù)設(shè)編碼是指一種字符編碼,對(duì)于不同格式的字體文件對(duì)應(yīng)的預(yù)設(shè)編碼規(guī)則可能是不同的,比如對(duì)于TTF格式的字體文件對(duì)應(yīng)的預(yù)設(shè)編碼規(guī)則為Unicode編碼規(guī)則。將文本中每個(gè)字符按照預(yù)設(shè)編碼規(guī)則進(jìn)行編碼,得到對(duì)應(yīng)的字符編碼,得到字符編碼是為了在原始字體文件中查找對(duì)應(yīng)字符的字形數(shù)據(jù)。203、根據(jù)字符編碼在第一索引表中查找對(duì)應(yīng)每個(gè)字符的字形索引。原始字體文件中包含多個(gè)表,而本實(shí)施例中只需要使用其中的幾個(gè)表,因此需要通過原始字體文件中的注冊(cè)表即所有表的索引找到所需表的索引,然后根據(jù)所需表的索引在原始字體文件中查找到對(duì)應(yīng)的所需表。本步驟中所需表為字符編碼與字形索引的映射表,記作第一索引表。通過第一索引表就可以根據(jù)由步驟202中得到的字符編碼找到對(duì)應(yīng)的字形索引,得到字形索引是為后續(xù)找到字形數(shù)據(jù)的必要準(zhǔn)備。其中,需要說明的是,若原始字體文件為TTF文件,則對(duì)應(yīng)的第一索引表為Cmap表。204、根據(jù)字形索引在字形數(shù)據(jù)表中查找對(duì)應(yīng)每個(gè)字符的字形數(shù)據(jù)。在根據(jù)字形索引查找對(duì)應(yīng)的字形數(shù)據(jù)之前,首先需要獲取到字形數(shù)據(jù)表,字形數(shù)據(jù)表中記錄了所有的字形數(shù)據(jù),而字形數(shù)據(jù)的查找需要通過字形索引進(jìn)行查找,因此首先需要獲取字形數(shù)據(jù)表。字形數(shù)據(jù)表的獲取與步驟203中獲取第一索引表的實(shí)現(xiàn)方式是相同的,都是通過原始字體文件中的注冊(cè)表查找得到的。其中,需要說明的是,若原始字體文件為TTF文件,則對(duì)應(yīng)的第一索引表為glyf表。得到字形數(shù)據(jù)表之后,根據(jù)由步驟203得到的字形索引在字形數(shù)據(jù)表中查找與字形索引對(duì)應(yīng)的字形數(shù)據(jù)。需要說明的是字形數(shù)據(jù)指每個(gè)字形(也稱作“圖元”)的輪廓定義以及網(wǎng)格調(diào)整指令。得到的字形數(shù)據(jù)是文本中的字符對(duì)應(yīng)的字形數(shù)據(jù)。205、將文本中所有字符的字形數(shù)據(jù)按照原始字體文件的規(guī)范寫入新的字體文件,得到目標(biāo)字體文件。本步驟的實(shí)現(xiàn)方式與圖1步驟103中的實(shí)現(xiàn)方式相同,此處不再贅述。進(jìn)一步的,作為對(duì)上述各實(shí)施例的實(shí)現(xiàn),本發(fā)明實(shí)施例的另一實(shí)施例還提供了一種數(shù)據(jù)處理的裝置,用于實(shí)現(xiàn)上述圖1及圖2所述的方法。如圖3所示,該裝置包括:獲取單元31、字形查找單元32以及寫入單元33。獲取單元31,用于獲取文本,文本為網(wǎng)頁(yè)中的文本。本實(shí)施例中的文本主要是指網(wǎng)頁(yè)中的文本,并且引用網(wǎng)頁(yè)的瀏覽器等本身是不包含該文本所屬的字體類型,比如新字體類型或者特殊字體等組成的文本。新字體類型通常指充滿動(dòng)畫感的字體、外形為動(dòng)物頭像的字體、圖片制作的有趣字體等,特殊字體可能為甲骨文等。其中上述文本可能是網(wǎng)頁(yè)中的全部文本或是網(wǎng)頁(yè)中的一部分文本。另外需要說明的是,獲取文本不是直接從網(wǎng)頁(yè)中獲取文本,而是在網(wǎng)頁(yè)中的文本還沒有通過引用網(wǎng)頁(yè)的瀏覽器等將其顯示之前,獲取將要在網(wǎng)頁(yè)中顯示的上述文本。字形查找單元32,用于在文本對(duì)應(yīng)的原始字體文件中查找文本中所有字符對(duì)應(yīng)的字形數(shù)據(jù),原始字體文件為包含與文本中字符同類型的所有字符的字形數(shù)據(jù)。當(dāng)瀏覽器遇到引用的網(wǎng)頁(yè)中包含獲取單元31中的文本時(shí),操作系統(tǒng)會(huì)暴露對(duì)應(yīng)的應(yīng)用程序接口API,使瀏覽器選取工具來對(duì)上述文本進(jìn)行正確的處理。本實(shí)施例是提前設(shè)置預(yù)設(shè)后綴名,使瀏覽器讀到預(yù)設(shè)后綴名的文件時(shí),將其傳回給插件,而不是直接對(duì)預(yù)設(shè)后綴名的文件進(jìn)行下載。將原始字體文件傳回給插件的過程可以是有多種形式,常見的形式為數(shù)據(jù)流的形式等。其中預(yù)設(shè)后綴名的文件為與文本對(duì)應(yīng)的原始字體文件的后綴名。當(dāng)插件接收到原始字體文件后,能夠按照原始字體文件的需要讀原始字體文件,并從中提取出上述文本中所有字符對(duì)應(yīng)的字形數(shù)據(jù)。由于原始字體文件中包含的是與文本中字符同類型的所有字符的字形數(shù)據(jù),而本實(shí)施例中需要使用的只是獲取單元31中涉及的文本中所有字符的字形數(shù)據(jù),因此只需要從原始字體文件中提取符合需求的字形數(shù)據(jù)。寫入單元33,用于將文本中所有字符的字形數(shù)據(jù)按照原始字體文件的規(guī)范寫入新的字體文件,得到目標(biāo)字體文件,以使瀏覽器下載目標(biāo)字體文件并將文本正確顯示在網(wǎng)頁(yè)中。將由字形查找單元32得到的所有字符的字形數(shù)據(jù)按照原始字體文件的規(guī)范編譯成新的字體文件,記作目標(biāo)字體文件。每種字體文件都有對(duì)應(yīng)的文件構(gòu)成、文件讀取等規(guī)范,比如字體文件(TrueTypeFont,TTF)文件,它是由微軟公司和蘋果公司共同推出的一種字體文件格式,其中TTF文件的文件規(guī)范包括:字體目錄中包含字體格式的版本號(hào)和幾個(gè)表,每個(gè)表都有一個(gè)tableentry結(jié)構(gòu)項(xiàng);并且所有數(shù)據(jù)使用big-endian編碼,最高位字節(jié)在最前面;每個(gè)表中都保存了同的邏輯信息,比如圖元數(shù)據(jù)表、字符到圖元的映射表等;等更多的規(guī)范。不同的字體文件通常對(duì)應(yīng)不同的文件規(guī)范。為了不符合原始字體文件的規(guī)范,因此將選擇將從原始字體文件中提取的字形數(shù)據(jù)還按照原始字體文件的規(guī)范進(jìn)行編譯得到目標(biāo)字體文件。由于按照原始字體文件規(guī)范得到的目標(biāo)字體文件中僅包含上述文本中所有字符的字形數(shù)據(jù),相當(dāng)于將原始字體文件中的字形數(shù)據(jù)進(jìn)行了過濾,得到了僅包含需要的字形數(shù)據(jù)的字體文件,因此在瀏覽器下載字體文件時(shí)大大的減小了下載文件的大小,從而加快了下載的速度,并且在保證網(wǎng)頁(yè)包含的上述文本正確顯示的前提下提高了網(wǎng)頁(yè)的加載速度。進(jìn)一步的,如圖4所示,字形查找單元32,包括:編碼模塊321,用于對(duì)文本中的每個(gè)字符按照預(yù)設(shè)編碼規(guī)則進(jìn)行編碼,得到對(duì)應(yīng)的字符編碼;本實(shí)施例中,預(yù)設(shè)編碼是指一種字符編碼,對(duì)于不同格式的字體文件對(duì)應(yīng)的預(yù)設(shè)編碼規(guī)則可能是不同的,比如對(duì)于TTF格式的字體文件對(duì)應(yīng)的預(yù)設(shè)編碼規(guī)則為Unicode編碼規(guī)則。將文本中每個(gè)字符按照預(yù)設(shè)編碼規(guī)則進(jìn)行編碼,得到對(duì)應(yīng)的字符編碼,得到字符編碼是為了在原始字體文件中查找對(duì)應(yīng)字符的字形數(shù)據(jù)。第一查找模塊322,用于根據(jù)字符編碼在第一索引表中查找對(duì)應(yīng)每個(gè)字符的字形索引,第一索引表為字符編碼與字形索引的映射表;原始字體文件中包含多個(gè)表,而本實(shí)施例中只需要使用其中的幾個(gè)表,因此需要通過原始字體文件中的注冊(cè)表即所有表的索引找到所需表的索引,然后根據(jù)所需表的索引在原始字體文件中查找到對(duì)應(yīng)的所需表。本步驟中所需表為字符編碼與字形索引的映射表,記作第一索引表。通過第一索引表就可以根據(jù)由編碼模塊321中得到的字符編碼找到對(duì)應(yīng)的字形索引,得到字形索引是為后續(xù)找到字形數(shù)據(jù)的必要準(zhǔn)備。其中,需要說明的是,若原始字體文件為TTF文件,則對(duì)應(yīng)的第一索引表為Cmap表。第二查找模塊323,用于根據(jù)字形索引在字形數(shù)據(jù)表中查找對(duì)應(yīng)每個(gè)字符的字形數(shù)據(jù)。在根據(jù)字形索引查找對(duì)應(yīng)的字形數(shù)據(jù)之前,首先需要獲取到字形數(shù)據(jù)表,字形數(shù)據(jù)表中記錄了所有的字形數(shù)據(jù),而字形數(shù)據(jù)的查找需要通過字形索引進(jìn)行查找,因此首先需要獲取字形數(shù)據(jù)表。字形數(shù)據(jù)表的獲取與第一查找模塊322中獲取第一索引表的實(shí)現(xiàn)方式是相同的,都是通過原始字體文件中的注冊(cè)表查找得到的。其中,需要說明的是,若原始字體文件為TTF文件,則對(duì)應(yīng)的第一索引表為glyf表。得到字形數(shù)據(jù)表之后,根據(jù)由第一查找模塊322得到的字形索引在字形數(shù)據(jù)表中查找與字形索引對(duì)應(yīng)的字形數(shù)據(jù)。需要說明的是字形數(shù)據(jù)指每個(gè)字形(也稱作“圖元”)的輪廓定義以及網(wǎng)格調(diào)整指令。得到的字形數(shù)據(jù)是文本中的字符對(duì)應(yīng)的字形數(shù)據(jù)。進(jìn)一步的,如圖4所示,裝置進(jìn)一步包括:注冊(cè)表查找單元34,用于在根據(jù)字符編碼在第一索引表中查找對(duì)應(yīng)每個(gè)字符的字形索引之前,查找原始字體文件中的注冊(cè)表,注冊(cè)表為原始字體文件中包含的所有表的索引;索引表查找單元35,用于根據(jù)注冊(cè)表查找第一索引表以及字形數(shù)據(jù)表。進(jìn)一步的,如圖4所示,獲取單元31,包括:提取模塊311,用于從網(wǎng)頁(yè)對(duì)應(yīng)的超文本標(biāo)記語(yǔ)言HTML文件中提取文本。獲取模塊312,用于獲取直接從外部輸入的文本。對(duì)于一些用戶可以輸入文本的網(wǎng)站,比如各種論壇、微博等,輸入的文本中也會(huì)存在對(duì)應(yīng)的瀏覽器不支持的字體類型的情況,這時(shí)需要從外部直接輸入的文本中提取獲取單元31涉及的文本。進(jìn)一步的,提取模塊311用于:查找HTML元素的選擇器,HTML元素為文本對(duì)應(yīng)的HTML元素;首先,查找瀏覽器設(shè)置的HTML元素的選擇器。瀏覽器在傳送原始字體文件的同時(shí),會(huì)提前設(shè)置需要在原始字體文件中查找的文本所對(duì)應(yīng)的HTML元素,文本包含在對(duì)應(yīng)的HTML元素中,而HTML元素需要通過對(duì)應(yīng)的選擇器進(jìn)行選擇,因此需要查找對(duì)應(yīng)的HTML元素對(duì)應(yīng)的選擇器。根據(jù)選擇器提取對(duì)應(yīng)HTML元素中的文本。然后,根據(jù)查找到的HTML元素對(duì)應(yīng)的選擇器定位到對(duì)應(yīng)HTML元素中的文本,并提取該文本。本發(fā)明實(shí)施例提供的數(shù)據(jù)處理的裝置,能夠首先獲取文本,文本為網(wǎng)頁(yè)中的文本;其次,在文本對(duì)應(yīng)的原始字體文件中查找文本中所有字符對(duì)應(yīng)的字形數(shù)據(jù),其中,原始字體文件為包含與所述文本中字符同類型的所有字符的字形數(shù)據(jù);最后,將所述文本中所有字符的字形數(shù)據(jù)按照原始字體文件的規(guī)范寫入新的字體文件,得到目標(biāo)字體文件,以使瀏覽器下載目標(biāo)字體文件并將所述文本正確顯示在網(wǎng)頁(yè)中。與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例能夠?qū)⑽谋緦?duì)應(yīng)的原始字體文件中僅包含所述文本中所有字符的字形數(shù)據(jù)重新組成新的字體文件即目標(biāo)字體文件,由于目標(biāo)字體文件中僅包含上述文本中的所有字符的字形數(shù)據(jù),因此相比于原始字體文件大大減小了文件本身的大小,因此能夠提高瀏覽器下載字體文件的速度,進(jìn)而提高網(wǎng)頁(yè)的加載效率。在上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述??梢岳斫獾氖?,上述方法及裝置中的相關(guān)特征可以相互參考。另外,上述實(shí)施例中的“第一”、“第二”等是用于區(qū)分各實(shí)施例,而并不代表各實(shí)施例的優(yōu)劣。所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過程,在此不再贅述。在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語(yǔ)言。應(yīng)當(dāng)明白,可以利用各種編程語(yǔ)言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語(yǔ)言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢园褜?shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來代替。此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的發(fā)明名稱(如數(shù)據(jù)處理的裝置)中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。當(dāng)前第1頁(yè)1 2 3 當(dāng)前第1頁(yè)1 2 3