如果知乎在全平台採用漢儀旗黑會如何呢?有沒有可能實現?

最近對字體有所關注的朋友應該都知道漢儀正式發布了旗黑,我下載了三款試用後覺得非常喜歡,閱讀體驗也非常好。於是便突發奇想,如果知乎能在全平台上採用旗黑,會不會極大地提升閱讀體驗呢?

另外,我個人同時擁有 Android 設備和 iOS 設備,而知乎在 Web,Android 和 iOS 上顯示的字體是不同的(Chrome 的思源,iOS 的華文黑,Android 的微米黑),某種程度上也造成了閱讀體驗的不一致。


  • Android 和 iOS App 倒是好說,只要知乎願意購買就成了。
  • Web 端很難辦——
    • 中文字體文件體積龐大,用 Web Font 對頁面載入速度會有顯著影響,即使是對每個頁面動態生成 Web Font 子集也是如此——而這對伺服器應該是會造成負擔的。對於網速不快的使用者,效果相當糟糕。
    • 桌面系統平台的字體渲染方式不同。OS X 和 Linux 的字體渲染風格倒是類似的;然而 Windows 所使用的 ClearType 並不適合漢儀旗黑這樣的沒有自帶 hinting 的字體。DirectWrite 效果會好很多,但現在 DW 也不是每個瀏覽器都在使用的。
    • 使用者習慣——今年二月知乎曾經嘗試在 CSS 中加入 Hiragino Sans GB 和微軟雅黑,結果遭到了不少 Windows 用戶的反對,在不久之後就更改回原方案了。

因此,在移動設備 App 中換用自定義字體倒是有商榷的餘地,但在網頁端中進行,可行性不太高。像現在這樣,僅指定合適的西文字體,將中文字體的選擇交由系統的字體回退機制負責,是目前為止相對較為穩妥的做法。這樣,對字體有所要求的使用者也可以自己去更改瀏覽器設置,來使用偏好的字體;而習慣了「默認樣式」的使用者,也不容易感到迷惑。

況且,想要「優化知乎閱讀體驗」,有比換字體要更優先處理的事情——比如字型大小;又比如正文區域使用換行符 (&) 而非段落 (&

) 所帶來的,一些用戶不習慣使用空行來區分段落造成的可讀性降低問題。


跟知乎談閱讀體驗?


首頁下載 10M woff 你受得了?

(這是估算的以 woff 格式封裝 fully-hinted ttf 兩個 weight 的文件體積)


  • 如果「更換字體」這件事情是由知乎來推進的

那麼好辦,至少 iOS 和 Android 是好辦的,只要花錢買商業授權就可以了。雖然漢儀的商業授權費用沒有標註在官網上,但是根據方正以及造字工房的商業授權費用來預估,漢儀單款字體的授權費用應該在每年數千元至萬元左右。這點小錢,對於現在這個可以每年砸大筆錢搞鹽 Club 的知乎來說,應該是毫無壓力可言,就看願不願意了。

副作用是由於需要內嵌字體,客戶端體積會微漲幾 MB 。不過現在隨便一個應用都能佔用過百 MB,這也不算個事了。

web 端相對麻煩。為了瀏覽一個只有幾十 K 的頁面載入一個幾 M 的字體顯然不太可能,所以必然需要用到 web font,根據頁面需要顯示的內容來生成動態的子字集,體積可以控制在數十 K 左右。然而漢儀雖然提供了 web font 解決方案,但是能否用於動態頁面還未可知(個人猜測應該是不能),所以可能需要依託國內一些提供字體託管的 web font 技術提供商(有字網 etc. 但版權又成了另外一個問題),總之技術上是可以做到的,就是錢的問題而已。副作用就是會影響到載入速度了。

真正棘手的問題是,由於需要同時兼容 Windows 和 OS X 兩個平台(如果把 Linux 算上那就是三個平台),然而 Windows 和 OS X 的字體渲染技術巨大差異,導致了字體的顯示效果不可能統一(這是婉轉的說法,直接來說就是 Windows 的字體渲染太糟糕了)。所以即使在 CSS 中指定了 font-family 的 fallback 順序,讓漢儀旗黑優先 fallback 在西文字體之後,在 Windows 用戶看來,這並沒有多少的「提升閱讀體驗」可言。甚至可以預想會出現的一種情況是,部分 Windows 用戶由於早已習慣了小字型大小下中易宋體點陣字型的清晰感,反而會對沒有做點陣 Hinting 的漢儀旗黑產生強烈的抗拒。

  • 如果「更換字體」這件事情是由個人用戶來推進的

跟上面剛好相反。移動端 app 比較麻煩,web 端相對簡單。

知乎的 app 應該沒有指定中文字體的 fallback 順序,所以最終還是 fallback 到系統的默認字體,iOS 8 以前是華文黑體,iOS 9 以後是蘋黑,原生 Android 是 Droid Sans Fallback,更換需要越獄或 root。

web 端好辦。知乎 web 端只指定了 font-family 只指定了西文字體 Helvetica Neue 和 Arial,中文字體 fallback 到瀏覽器/系統默認。要解決的話,可以將瀏覽器的 sans-serif 字體指定為漢儀旗黑,副作用是可能會影響到其他網站的頁面顯示效果。如果只需更換知乎的顯示字體,那麼可以藉助第三方的擴展應用,為知乎載入額外的 CSS 來修改顯示字體。我現在就是這樣做的,詳情可參考:拍扁了的知乎 - 站在運營與設計的彼岸 - 知乎專欄

最後說一下閱讀體驗這個事情。

坦白來說,讓知乎去更換字體這種事情,實際上一點都不現實。提問者的設想很美好,通過更換質量相對好一點的字體來提升用戶的閱讀體驗,只不過現實很殘酷:以絕大部分中文互聯網使用者的審美之差,根本談不上什麼閱讀體驗。更準確的說法是他們根本沒有閱讀體驗這個概念,只是單純地以自身糟糕的審美來判斷一個字體或一個頁面排版好看還是不好看,就像前幾天 iOS 9 升級後蘋黑置換了華文黑體引發的那場討論一樣。甚至更為糟糕的是,他們所謂的「好看」,有時僅僅是「看習慣了」而已,換了一個新東西,覺得不習慣了,所以就說這個不好。基於這樣糟糕的用戶基礎,做任何「以提升閱讀體驗為由,去改變用戶習慣已久的顯示效果」的事情最終都會落得一個吃力不討好的下場。之前知乎曾經將冬青黑體和微軟雅黑加入到 font-family 的 fallback 順序裡面,結果卻遭到用戶的大量吐槽:為什麼最近知乎的字體變了? - 知乎

但話說回頭,做這種陽春白雪的事情,雖然吃力不討好,但我認為是有意義的。知乎的出現,改變了很多中文互聯網長久以來形成的不好的習慣,譬如好好說話,正確地認真地討論一件事情,有理說理,不亂扯搞渾,不人身攻擊;譬如重視內容版權,轉載要向作者授權,註明作者和出處,這些東西在知乎出現以前是不可想像的,但是現在,這些觀念也逐漸形成了一種新的習慣。

然而好好說話、認真討論、內容版權,這些陽春白雪的東西在最初的也是不被用戶理解或看好的。所以,要麼不做,如果做,請堅持到底。認為是好的東西,是對的東西,即使被用戶吐槽說不好,也請再堅持多一下。正如上面所說的,很多時候用戶說不好,只是看不習慣而已。


這是在 OS X El Capitan GM Candidate 中 Safari 9.0 的對比圖,我比較了蘋方(在知乎的 CSS font-family 設置為 Helvetica Neue, Helvetica, Arial, sans-serif; 漢字無疑會回退到 sans-serif 即蘋方,但是 Google Chrome 仍然為華文黑體。順便說一句新浪微博居然直接在 font-family 中指定 STHeiti... 直接無視系統設定)、華文黑體、思源黑體 (Noto Sans CJK SC) 以及冬青黑體簡體中文。

效果各位自行評判。

知乎不支持大圖,所以請點擊下面的鏈接。

蘋方:

http://starkshaw.me/image/misc/Screen%20Shot%202015-09-22%20at%2002.56.02.png

華文黑體:

http://starkshaw.me/image/misc/Screen%20Shot%202015-09-22%20at%2002.57.22.png

思源黑體:

http://starkshaw.me/image/misc/Screen%20Shot%202015-09-22%20at%2002.57.59.png

冬青黑體:

http://starkshaw.me/image/misc/Screen%20Shot%202015-09-22%20at%2002.58.41.png

漢儀旗黑:

http://starkshaw.me/image/misc/Screen%20Shot%202015-09-22%20at%2003.11.22.png

在這裡面我個人覺得旗黑的效果並不算好,也許得另行優化,畢竟旗黑字重多,優化好會很出色。

App 方面,我寫了一段代碼在 iOS 中運行查看思源黑體在應用中的情況:

代碼在 ObjectiveCStudy/EmbedFontExample at master · starkshaw/ObjectiveCStudy · GitHub

視頻在 http://starkshaw.me/download/EmbedFontExample.mov

個人覺得效果還不錯,並且是免費的,我覺得 App 開發者們可以考慮定製字體而非使用系統字體——如果覺得自己的 App 想打造一種與眾不同的感覺,但有不是格格不入。


MIUI的字體商店有賣漢儀旗黑,你可以嘗試一下。


推薦閱讀:

從下圖能不能說明San Fransisco字體尚存問題?
為什麼思源黑體粗細不一?
寫給大家看的中文排版指南
台灣日本翻閱的右開(左翻)本文字排版是絕對不允許橫排的嗎?
如何將文章中所有的直引號( " " ) 都替換成彎引號(「 」)?

TAG:知乎 | 字體 | 中文字體 | 字體排印 | 漢儀旗黑 |