掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
在互聯(lián)網(wǎng)技術(shù)領(lǐng)域,新的技術(shù)總是層出不窮,我們確實應(yīng)該要不斷的接受新的技術(shù)和思維方式,但也不能為了新而新。今天跟大家分享的一個小案例,就來聊聊關(guān)于網(wǎng)絡(luò)字體的事兒,在前幾天無意打開一個網(wǎng)站發(fā)現(xiàn)很慢,見過查看網(wǎng)絡(luò)請求數(shù)據(jù)是這樣的。
這個網(wǎng)頁40個請求(對于普通網(wǎng)站來講還算是正常,畢竟大部分是圖片),然而頁面大小有25.8MB,打開打開花了20s左右的時間,只能說網(wǎng)站和我的客戶端網(wǎng)絡(luò)帶寬足夠牛逼,否則會更加慢??吹骄W(wǎng)絡(luò)請求大小,很多圖片都超過1MB,其實這些圖片在該網(wǎng)站展示出來并不大,原因就是取的原圖片,這個問題我們?nèi)蘸笤僬f。而最扎眼的莫過于第一個體積最大的資料,我們發(fā)現(xiàn)是一個ttf文件,顧名思義就是普通的字體文件。
該文件有14.3MB,我的天!在我們微構(gòu)網(wǎng)絡(luò)團(tuán)隊來講這是無法接受的大小,我們盡量把網(wǎng)站首頁都控制在1MB以內(nèi),這里一個資源就超過10MB!
當(dāng)然有時候網(wǎng)站也必須加載大體積文件,如音視頻文件,一般使用懶加載(即先等頁面加載完全后再加載大文件,然后上CDN)。但這個字體文件,而且是超過10MB的字體文件這么放真的值得商榷。
為什么我們不建議這么做?
1、可以看到該字體正是非常常見的微軟雅黑,這個字體在win上是自帶的,因此無需通過網(wǎng)絡(luò)字體加載;而在mac和移動端中客戶端也自帶類似的字體??傊?,它并不是個性化小眾的字體,使用網(wǎng)絡(luò)字體意義不是太大。
2、就算該字體是個性化小眾字體,那么為了某少部分子而加載一個10MB+的字體文件,就有點(diǎn)得不償失了。
3、雖然我不是專業(yè)的法律人士,但似乎這么用微軟雅黑字體存在侵權(quán)嫌疑。因為微軟雅黑是方正的版權(quán),我們調(diào)用客戶端字體,那是用戶設(shè)備自帶的,而把字體文件放在我們云端服務(wù)器上性質(zhì)應(yīng)該是不一樣的。
如果一定要用大體積的字體怎么辦?
1、如果只是極少數(shù)的文字需要個性化,那么可以用圖片代替。
2、一般而言中文字體庫都挺大的,如果完整加載會很大的;因此在確定可能用到的常用文字,我們可以剝離出常用的文字。這樣精簡以后的字體庫體積將大大減小。
3、需要注意的是,不管上述的哪種方式;都不能拿著人家的版權(quán)字體這么操作,不管你是打在圖片上還是提取需要用的文字而形成新的字體包,因為這么干事侵權(quán)的。
其實技術(shù)跟武功是一樣的,你必須有足夠的內(nèi)力方可去駕馭高深的招式,否則就會走火入魔。網(wǎng)絡(luò)字體的應(yīng)用也好,其他解決方案或者技術(shù)的應(yīng)用也好,都得結(jié)合項目的實際情況做相應(yīng)的處理。如果只是為了用而用,只會適得其反。
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流