設計師的春天:中文WebFont解決方案Font-Spider(字蛛)
想在網(wǎng)頁中使用個性牛逼的字體?想拋棄千篇一律的Simsun,yahei?
我們在日常需求中,經(jīng)常會碰到視覺設計師對某個中文字體效果非常堅持的情況,因為頁面是否高大上,字體選擇是很重要的一個因素,選擇合適的字體可以讓頁面更優(yōu)雅。面對這種問題,我們通常以下方式來進行設計還原:
使用圖片背景還原設計,即使用 photoshop 將文本圖層單獨導出成網(wǎng)頁背景圖片。
產生的問題
1. 制作與維護成本很高。切圖繁瑣、高清屏適配繁瑣、合并雪碧圖更繁瑣,后期修改更加繁瑣。
2. 用戶體驗差。導致網(wǎng)頁不支持選中、復制、搜索、翻譯、矢量縮放,也會影響視障用戶使用讀屏器操作網(wǎng)頁。
3. 帶來更多帶寬消耗。導出的圖片體積隨著文本面積增加,且字形無法重復利用,這消耗著大量的服務器資源
WebFont技術提供了在網(wǎng)頁使用特殊字體的可能,從而避免用圖片的方法。它的實現(xiàn)方法是通過CSS的@font-face引入字體。很多互聯(lián)網(wǎng)公司已經(jīng)率先采用了這種方法,比如Apple官網(wǎng)就是采用了自己的字體。Google也推出了免費的WebFont云托管服務,在國外網(wǎng)站自定義字體得到很好的應用。
在中文方面自定義字體卻遲遲沒有廣泛應用,這是有什么原因呢?
中文WebFont的困境:
-
中文字體體積大
英文字體文字部分由26個字母組成,所以字體文件通常不會太大;而中文漢字數(shù)量總共約有九萬左右, 國標(GB)字庫 有6763字, 而根據(jù)《現(xiàn)代漢語常用字表》統(tǒng)計數(shù)據(jù),常用漢字也要有3500個左右。 中文字體文件通常都會幾M的大小,參照現(xiàn)在中國的網(wǎng)絡環(huán)境,顯然不適合在項目中使用。
-
瀏覽器支持
不同瀏覽器對字體的支持也是不同的,沒有一種可以支持所有瀏覽器的字體,這就要求我們針對不同的瀏覽器制作不同的字體。(N=Not supported, P=Partial support, Y=Supported)
針對以上的問題,我們可以得出中文WebFont要解決的問題是:壓縮和轉碼。
Font-Spider中文WebFont解決方案的誕生:
為了不讓工程與體驗制約著設計師對字體選擇以及創(chuàng)意的實現(xiàn),我們利用業(yè)余時間解決了中文WebFont的兩大問題即壓縮和轉碼,于是便有了 Font-Spider (字蛛)的誕生。作為業(yè)界首款中文 WebFont 本地自動化壓縮與轉碼工具,中文字體 web 化問題迎刃而解。它是一個 web 字體工具,通過自動化技術來壓縮、轉碼跨平臺的中文字體,讓網(wǎng)頁自由嵌入中文字體成為可能。
原理
1. 爬行本地 html 文檔,分析所有 css 語句
2. 記錄@font-face
語句聲明的字體,并且記錄使用該字體的 css 選擇器
3. 通過 css 選擇器的規(guī)則查找當前 html 文檔的節(jié)點,記錄節(jié)點上的文本
4. 找到字體文件并刪除沒被使用的字符
5. 編碼成跨平臺使用的字體格式
編碼零干預
不需要改變 web 工程師現(xiàn)有的編碼習慣、工程師可直接通過 css @font-face
與選擇器定義并應用字體。
壓縮與轉碼
剔除沒有使用的字符,通??蓪?shù) MB 的字體壓縮成數(shù)十 KB 大小,解決中文字體過大的問題,并編碼成跨平臺兼容的格式。
主頁
web 中文字體演示與工具使用請前往主頁:http://font-spider.org/
項目實踐
2014年接到的最后一個項目需求——騰訊云解決方案改版。新的騰訊云解決方案采用了全新的排版方式,更加簡潔大氣。標題部分字體更是采用了Adobe與Google所領導開發(fā)的開源字體——思源字體。面對項目中特殊字體的需求,快速整理了實現(xiàn)方案。騰訊云線上的解決方案已經(jīng)采用了思源的特殊字體。
開源
我們把Font-Spider(字蛛)不斷完善,并且回饋給開源社區(qū),希望為中文WebFont的發(fā)展出一份力,讓更多的中文站點可以使用精美的字體。
本文地址:http://m.likemindfilms.com/tutorial/yj2657.html