我們在設計網頁時會使用一些常用的字體,對於一些並不常用的字體則會通過圖片來代替,通過Google API提供的字體我們可以不需要任何圖片,而使用一些並不常用的字體,當用戶打開網頁時會通過Google服務器鏈接到這些字體,從而讓網頁顯示出來,過程中用戶不會感到任何不適。
對很多糾結於字體的 Web 設計與開發者而言,昨天有關 Google Font API 的新聞著實讓他們高興了一回,這個非常簡單實用的 API 包含了一套字體庫和預覽工具,結合 Google 與 TypeKit 聯合開發的開源 WebFont 加載工具,Web 設計者們在自己的站點中引用個性字體變得輕而易舉。
Google Web 字體 API 的使用非常簡單,只需從 Google 那裡鏈接一個 CSS 文件並在你自己的 CSS 定義中引用字體名即可,這裡有一個演示可以參考。事實上,Google Web 字體 API 就是 @font-face,你自己也可以實現,但 Google 的方法有有很多優勢:
當然,加載 Google 的 CSS 文件是個額外的負擔,不過你可以直接鏈接字體文件本身,甚至將字體下載到站點制作你自己的 SVG 版。另外,Google Web 字體 API 暫不支持 iPhone 和 iPad。
關於 WebFont 加載器,那是一段 JavaScript 腳本,用來加載字體,可以不用,但使用的話會帶來額外的好處。比如,Firefox 在加載 Google Web 字體的時候,在 @font-face 加載完成之前,會先顯示一個代用字體,等 @font-face 完全加載後,真正的字體會取代那個代用字體,這會引起頁面閃爍,且讓人費解,WebFont 加載器可以解決這個問題。
Raph Levien 是一個字體設計師,設計了 Inconsolata 字體。Raph 也是 Google Web 字體 API 團隊的成員,本文是對 Raph 的一次訪談。
Chris:
Google 為 Web 設計者們做了很多好東西,包括一些會占用他們大量帶寬的東西,比如,使用他們的 CDN 網絡托管 JavaScript 庫,允許我刻薄一點,這樣做對 Google 到底有什麼好處?當然,這會讓 web 字體更快,但一個更快的 Web 對 Google 有什麼好處?是為了從中分析對 Google 有用的數據信息嗎?
Raph:
不過是為了讓 Web 更快,更豐富。我們不收集任何個人信息,我們的 Log 記錄也僅僅是為了統計性能狀況,並統計哪些字體受歡迎。這個服務最好的地方是,就像我們托管 Ajax 庫那樣,由於很多站點都在使用這些服務,浏覽器很容易從緩存中找到已經加載過的東西,不必每次都重新加載。
最壞的情況,假如你們托管的字體宕機,那些引用這些字體的站點會怎麼樣?會使用替代字體,還是別的?
Raph:
是的,會使用替代字體,這只是個 CSS,設計者可以完全控制使用什麼字體。另外,如果你想有更好的控制,可以使用 WebFont 加載器,比如,當字體加載失敗的時候,你可以使用 JavaScript 改變 CSS,我們還會和所有主流浏覽器開發商合作,改善 Web 字體體驗。
你們和 TypeKit 的合作很讓人感興趣,能說一說嗎?
Raph:
TypeKit 在 Web 字體方面走得最遠,我們很早就知道他們(事實上,Jeff Veen 曾在 Google 干過)。因此,很自然地,我們就談到了一起。我們的開放字體是很好的東西,但仍想有更多的字體可以讓用戶使用,除此之外,我們還和其他主要字體商合作,包括 Ascender。
一些免費或開源字體一般是為它們的設計商充當廣告的,對 Google 字體庫而言,這是否一個障礙?最終這些字體庫收藏的都是受限制的字體。
Raph:
目前為止,我們收到了很好的反響。人們有各種各樣的理由向我們貢獻字體,其中一個確切無疑的原因是,這會給他們帶來更多流量來幫助他們賣更多收費字體。還有很多人,僅僅是喜歡設計字體,不管怎麼樣,我們很有信心看到我們的開源字庫越來越強大。不過,在任何時候,那些專業字體商擁有更高質量的字體。