字體顯示方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別是涉及一種字體顯示方法和裝置。
【背景技術(shù)】
[0002]傳統(tǒng)技術(shù)中,要在終端上顯示某種字體,特別是要在諸如平板電腦、智能手機(jī)等移動(dòng)終端上顯示一些個(gè)性化的字體,往往需要將整個(gè)字庫(kù)下載到終端中,該字庫(kù)包含所有預(yù)先設(shè)定好的字體數(shù)據(jù)。然而,一個(gè)標(biāo)準(zhǔn)的字庫(kù)往往都包含幾十甚至上百種的字體所對(duì)應(yīng)的字體數(shù)據(jù),將整個(gè)字庫(kù)下載下來(lái)不僅會(huì)耗費(fèi)額外的網(wǎng)絡(luò)資源,也會(huì)占用較多的存儲(chǔ)空間。
【發(fā)明內(nèi)容】
[0003]基于此,有必要針對(duì)上述問(wèn)題,提供一種能節(jié)約網(wǎng)絡(luò)資源和節(jié)省終端本地存儲(chǔ)空間的字體顯示方法和裝置。
[0004]一種字體顯示方法,所述方法包括:
[0005]獲取輸入的文字和選擇的字體名稱(chēng);
[0006]判斷本地是否存儲(chǔ)有與所述字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù);
[0007]若是,則從本地獲取與所述字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)所述字體數(shù)據(jù)將所述文字顯示為對(duì)應(yīng)的字體;
[0008]否則,從服務(wù)器獲取與所述字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)所述字體數(shù)據(jù)將所述文字顯示為對(duì)應(yīng)的字體。
[0009]一種字體顯示裝置,所述裝置包括:
[0010]第一獲取模塊,用于獲取輸入的文字和選擇的字體名稱(chēng);
[0011]第一判斷模塊,用于判斷本地是否存儲(chǔ)有與所述字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù);
[0012]第一字體顯示模塊,用于若本地存儲(chǔ)有與所述字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),則從本地獲取與所述字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)所述字體數(shù)據(jù)將所述文字顯示為對(duì)應(yīng)的字體;若本地沒(méi)有存儲(chǔ)與所述字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),則從服務(wù)器獲取與所述字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)所述字體數(shù)據(jù)將所述文字顯示為對(duì)應(yīng)的字體。
[0013]上述字體顯示方法和裝置,在本地存儲(chǔ)有與選擇的字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù)時(shí),則直接從本地獲取所需的字體數(shù)據(jù),不再向服務(wù)器下載整個(gè)字庫(kù),而且,當(dāng)本地不存在所需的字體數(shù)據(jù)時(shí),也只從服務(wù)器獲取與字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),而非將整個(gè)字庫(kù)下載下來(lái)。這樣,既不會(huì)耗費(fèi)過(guò)多的網(wǎng)絡(luò)資源,也能節(jié)省終端本地的存儲(chǔ)空間。
[0014]一種字體顯示方法,所述方法包括:
[0015]獲取輸入的文字;
[0016]獲取所述輸入的文字對(duì)應(yīng)的編碼;
[0017]判斷本地是否存儲(chǔ)有與所述輸入的文字對(duì)應(yīng)的編碼對(duì)應(yīng)的字體數(shù)據(jù);
[0018]若是,則從本地獲取與所述編碼對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)獲取到的字體數(shù)據(jù)將所述輸入的文字顯示為對(duì)應(yīng)的字體;
[0019]否則,從服務(wù)器獲取與所述輸入的文字對(duì)應(yīng)的編碼對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)獲取到的字體數(shù)據(jù)將所述輸入的文字顯示為對(duì)應(yīng)的字體。
[0020]一種字體顯示裝置,所述裝置包括:
[0021]第二獲取模塊,用于獲取輸入的文字,獲取所述輸入的文字對(duì)應(yīng)的編碼;
[0022]第二判斷模塊,用于判斷本地是否存儲(chǔ)有與所述輸入的文字對(duì)應(yīng)的編碼對(duì)應(yīng)的字體數(shù)據(jù);
[0023]第二文字顯示模塊,用于若本地存儲(chǔ)有與所述輸入的文字對(duì)應(yīng)的編碼對(duì)應(yīng)的字體數(shù)據(jù),則從本地獲取與所述編碼對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)獲取到的字體數(shù)據(jù)將所述輸入的文字顯示為對(duì)應(yīng)的字體;若本地沒(méi)有存儲(chǔ)與所述輸入的文字對(duì)應(yīng)的編碼對(duì)應(yīng)的字體數(shù)據(jù),則從服務(wù)器獲取與所述輸入的文字對(duì)應(yīng)的編碼對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)獲取到的字體數(shù)據(jù)將所述輸入的文字顯示為對(duì)應(yīng)的字體。
[0024]上述字體顯示方法和裝置,根據(jù)輸入的文字對(duì)應(yīng)的編碼來(lái)獲取字體數(shù)據(jù),當(dāng)本地存在所需的字體數(shù)據(jù)時(shí),則不再向服務(wù)器下載整個(gè)字庫(kù),而且,當(dāng)本地不存在所需的字體數(shù)據(jù)時(shí),只從服務(wù)器獲取對(duì)應(yīng)的字體數(shù)據(jù),而非將整個(gè)字庫(kù)下載下來(lái)。因此,節(jié)約了網(wǎng)絡(luò)資源,也節(jié)省了終端本地的存儲(chǔ)空間。
【附圖說(shuō)明】
[0025]圖1為一個(gè)實(shí)施例中字體顯示方法的流程圖;
[0026]圖2為另一個(gè)實(shí)施例中字體顯示方法的流程圖;
[0027]圖3為再一個(gè)實(shí)施例中字體顯示方法的流程圖;
[0028]圖4為又一個(gè)實(shí)施例中字體顯示方法的流程圖;
[0029]圖5為一個(gè)實(shí)施例中字體顯示裝置的結(jié)構(gòu)示意圖;
[0030]圖6為另一個(gè)實(shí)施例中字體顯示裝置的結(jié)構(gòu)示意圖;
[0031]圖7為另一個(gè)實(shí)施例中的字體顯示裝置的結(jié)構(gòu)示意圖;
[0032]圖8為另一個(gè)實(shí)施例中的字體顯示裝置的結(jié)構(gòu)示意圖;
[0033]圖9為再一個(gè)實(shí)施例中字體顯示裝置的結(jié)構(gòu)示意圖;
[0034]圖10為又一個(gè)實(shí)施例中字體顯示裝置的結(jié)構(gòu)示意圖;
[0035]圖11為又一個(gè)實(shí)施例中的字體顯示裝置的結(jié)構(gòu)示意圖;
[0036]圖12為又一個(gè)實(shí)施例中字體顯示裝置的結(jié)構(gòu)示意圖;
[0037]圖13為實(shí)現(xiàn)本發(fā)明實(shí)施例的終端的硬件架構(gòu)圖。
【具體實(shí)施方式】
[0038]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0039]在一個(gè)實(shí)施例中,如圖1所示,提供了一種字體顯示方法,該方法以應(yīng)用于各種可輸入文字的終端上進(jìn)行舉例說(shuō)明,該終端包括但不限于個(gè)人計(jì)算機(jī)、筆記本電腦、個(gè)人數(shù)字助理、平板電腦、智能手機(jī)等,該方法包括:
[0040]步驟102,獲取輸入的文字和選擇的字體名稱(chēng)。
[0041]字體名稱(chēng)可用于標(biāo)識(shí)不同的字體,比如,傳統(tǒng)的宋體、楷體等字體可用字體名稱(chēng)加以區(qū)分。本實(shí)施例中,在獲取到輸入的文字之前或者之后,可獲取用戶(hù)通過(guò)字體列表所選擇的字體名稱(chēng),該字體列表為字體名稱(chēng)所形成的列表,可預(yù)先存儲(chǔ)在終端本地,或者獲取到輸入的文字之前或者之后從服務(wù)器獲取得到。
[0042]步驟104,判斷本地是否存儲(chǔ)有與字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),若是,則進(jìn)入步驟106,否則進(jìn)入步驟108。
[0043]字體數(shù)據(jù),也可稱(chēng)之為字形數(shù)據(jù),是用來(lái)描述字體輪廓的貝塞爾曲線(xiàn)數(shù)據(jù)。每個(gè)字體數(shù)據(jù)與一個(gè)字體名稱(chēng)相對(duì)應(yīng),用來(lái)唯一標(biāo)識(shí)對(duì)應(yīng)的字體。本實(shí)施例中,終端本地所存儲(chǔ)的與字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù)包括從終端輸入的自定義字體對(duì)應(yīng)的字體數(shù)據(jù)和從服務(wù)器下載并存儲(chǔ)在終端本地的字體數(shù)據(jù)。這些字體數(shù)據(jù)包括但不限于如宋體、楷體等常規(guī)字體、預(yù)先服務(wù)器設(shè)置或者用戶(hù)輸入設(shè)置的如“卡通字體”等個(gè)性化字體等。
[0044]步驟106,從本地獲取與字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)字體數(shù)據(jù)將文字顯示為對(duì)應(yīng)的字體。
[0045]如果本地查詢(xún)到與選擇的字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),則可直接從本地讀取該字體數(shù)據(jù),根據(jù)字體數(shù)據(jù)將文字顯示為對(duì)應(yīng)的字體。
[0046]步驟108,從服務(wù)器獲取與字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),根據(jù)字體數(shù)據(jù)將文字顯示為對(duì)應(yīng)的字體。
[0047]本實(shí)施例中,如果本地查詢(xún)不到與選擇的字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),則可向服務(wù)器查詢(xún),從服務(wù)器下載與選擇的字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù)到終端本地,然后根據(jù)字體數(shù)據(jù)將輸入的文字顯示為對(duì)應(yīng)的字體。
[0048]由于當(dāng)本地存在所需的字體數(shù)據(jù)時(shí),則不再向服務(wù)器下載整個(gè)字庫(kù),而且,當(dāng)本地不存在所需的字體數(shù)據(jù)時(shí),只從服務(wù)器獲取與字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù),而非將整個(gè)字庫(kù)下載下來(lái)。這樣,既不會(huì)耗費(fèi)過(guò)多的網(wǎng)絡(luò)資源,也能節(jié)省終端本地的存儲(chǔ)空間。
[0049]可以理解,從服務(wù)器下載到與選擇的字體名稱(chēng)對(duì)應(yīng)的字體數(shù)據(jù)后,可將該字體數(shù)據(jù)對(duì)應(yīng)字體名稱(chēng)存儲(chǔ)在終端本地。在下次選擇相同的字體名稱(chēng)時(shí),則可直接從終端本地獲取到該字體數(shù)據(jù),不需要再耗費(fèi)網(wǎng)絡(luò)資源進(jìn)行下載。
[0050]在一個(gè)實(shí)施例中,也可以在獲取輸入的文字后,獲取輸入的文字對(duì)應(yīng)的編碼,該編碼為Unicode編碼。根據(jù)文字對(duì)應(yīng)的編碼在本地查詢(xún)是否有與該編碼對(duì)應(yīng)的字體數(shù)據(jù),如果有,則直接從本地獲取與該編碼對(duì)應(yīng)的字體數(shù)據(jù),如果沒(méi)有,則可根據(jù)編碼從服務(wù)器獲取對(duì)應(yīng)的字體數(shù)據(jù),然后根據(jù)獲取到的字體數(shù)據(jù)將文字顯示為對(duì)應(yīng)的字體。
[0051]Unicode編碼是一個(gè)用來(lái)編碼字符的字符集,文字的Unicode編碼可以唯一標(biāo)識(shí)文字。如果在本地能夠查詢(xún)到與輸入的文字的Unicode編碼對(duì)應(yīng)的字體數(shù)據(jù),則表明之前輸入過(guò)相同的文字并使用了該字體數(shù)據(jù),可直接將輸入的文字自動(dòng)的顯示為之前使用過(guò)的字體。本實(shí)施例通過(guò)文字的Unicode編碼查找之間使用過(guò)的字體數(shù)據(jù),自動(dòng)將輸入的文字顯示為相應(yīng)的