一筆一劃間蘊藏的學問 淺談計算機字體

轉載:http://pcedu.pconline.com.cn/340/3409828_all.html#content_page_2

1、點陣字體和矢量字體

字體雖小,但卻無處不在。每天我們打開電腦,掏出手機,我們都能看到形態各異的字體。而電腦及手機等設備的屏幕質材不一,要如何讓字體在各種屏幕上清晰美觀地顯示,卻又是一門不可小覷的大學問。

我們知道,顯示器擁有很多的發光點(起碼看上去是發光點),一個個明暗、色彩不同的發光點組成了能顯示各種內容的屏幕。既然屏幕上的點可以組成各種圖案,那麼當然也可以用這些點來排列出文字,顯示各種字體。這聽上去好像很簡單的樣子,最初人們也是這樣子認爲的,於是就簡單地使用點陣來顯示電腦字體。
這裏寫圖片描述
點陣字體

點陣字體其本質是圖片,用點的虛實來描繪出字符輪廓。人們用一張圖片來表示一個字符,併爲每個字符提供了正常、粗體、斜體、粗斜體四種變體。於是人們就爲各個字母製作了各種各樣的圖片,簡單地實現了字體的顯示。這的確很簡單,不就把字符畫到圖片上去嘛,請個臨時工,不到幾天就能把英文字母通通搞完,簡直就是人力資源和高科技的完美協作。
這裏寫圖片描述
人力資源總是有的

但是很快人們就發現這十分不靠譜了。點陣字體是一張張圖片,這就意味着這些圖片是有大小尺寸的。當人們試圖放大點陣字體的時候,字符紛紛打上了馬賽克。這就是點陣字體的一個問題——點陣字體很難縮放,每個字符都只能清晰顯示特定字號,放大會打碼,縮小會斷裂。面對滿屏幕的馬賽克和凌亂的筆畫,大家紛紛表示不能接受。
這裏寫圖片描述
馬賽克阻礙着人類文明的進步

數學拯救了世界,矢量字體誕生了。人們用數學方程來描述筆畫,把字符分隔成若干關鍵點,並用光滑的曲線予以連接。這些曲線可以用有限個參數來唯一確定,通過計算可以無損地放大縮小每一個字符。Adobe(嗯,就是賣Photoshop那個)在1985年提出了一套矢量字體標準PostScript並廣泛流行,包含了PostScript Type 1和Type3。Type 1複雜且精細,可向字體內增添自己的隱含信息,面向那些打算在自己的字體增添隱含信息的廠商高價售賣。Type 3則無法增添隱含信息,也包括了其他一些特性,Adobe將其公開出版發行。
這裏寫圖片描述

由於Type 3是公開發行的,其他廠商迅速搞出了可以創造Type 3字體的工具,人人都能創作字體,Adobe霎時老淚縱橫。也許是受了刺激,很快Adobe又創造了另一個版本的PostScript,渲染效率更高,可以在當時十分緩慢的個人電腦上運行。這個版本的PostScript被命名爲Display PostScript。

2、TrueType和OpenType的誕生

時間來到了20世紀90年代,當時個人計算機市場主要有兩家大家都比較熟悉的公司,它們就是蘋果和微軟。看着個人計算機市場的日益紅火,Adobe當然不想放過商機。Adobe向蘋果和微軟兩家公司賣力兜售Display Postscript,只可惜對方就是不買賬——字體是操作系統的重要部分,這個部分絕然不可能讓第三方來控制的。蘋果和微軟商量了一下,決定進行合作來開發類似Display PostScript的東西。
這裏寫圖片描述
設計對白:“我們一起來搞Adobe?”“甚善!”

在拒絕Adobe Display PostScript的兜售以後,鑑於此前也有着一些開發矢量字體的研究,蘋果決定製作一個全新的格式,代號爲“Bass”。當開發完成後,“TrueType”這種至今仍在廣泛使用的字體格式就誕生了。TrueType格式十分常見,如果看到後綴名是ttf的字體文件,那麼這就是TrueType格式的字體了。
這裏寫圖片描述
被廣泛使用的TrueType

但是TrueType在當時並不叫座,因爲大部分廠商已經重金購買了Adobe的Type 1字體,不願意更換。於是蘋果向合作伙伴微軟進行了求助,共同對抗Adobe。蘋果給予微軟TrueType認證,微軟把自己開發的TrueImage打印技術授予了蘋果。這兩套東西一個用來顯示一個用來影印,合起來就有了PostScript的功能。

但是,很快蘋果就發現自己被微軟坑了。微軟開發的TrueImage打印技術錯漏百出,連微軟自己都不用。蘋果頓時淚流滿面,TrueImage事實上也並未在蘋果和微軟的任何產品中出現。不僅如此,在1996年,微軟還出乎意料地和Adobe合作開發新一代字體格式,合併了PostScript Type 1和TrueType技術,推出了OpenType。
這裏寫圖片描述
微軟的TrueImage打印技術不靠譜

OpenType支持Unicode,能支持任何語言文本,體積小,開發難度也比較小,並且具有高級字形特徵,效果十分好。由於特性先進,大受業界歡迎。Adobe在2002年末已經將其所有字體庫都改用了OpenType,連蘋果也在Mac OS X 10.4 Tiger系統開始支持OpenType功能,微軟則在Windows 2000以後廣泛內置OpenType字體支持。OpenType也在許多軟件中得到了良好兼容,比如說PDF可以無縫內嵌OpenType字體,OpenType的確是業界未來的趨勢。
這裏寫圖片描述
業界未來OpenType

3、兩種迥然不同的字體渲染理念

實際上,蘋果和微軟都在系統中都廣泛支持OpenType和TrueType,但我們仍可以發現蘋果電腦Mac和微軟Windows PC在顯示字體方面有一些微妙的不同。排除字體本身的原因,這是由於Mac和Windows對字體的渲染方面有一些理念差異。

矢量字體解決了字體本身的精度問題,但是把高精度的字體顯示到屏幕上,倒不見得一定會高精度。把字體打印輸出,紙張和字體黑白分明,筆畫輪廓清晰,襯線體的棱角細節纖毫畢現,這得益於300dpi(dots per inch,每英寸點數)的印刷精度。而顯示屏則很少達到這個精度,所以屏幕精度能達到300ppi(pixels per inch,每英寸像素)以上的Retina屏幕能在業界中引發一陣分辨率狂潮。
這裏寫圖片描述
喬布斯在介紹Retina屏幕

在顯示字體的時候,在筆畫周圍增加一些輔助顯示的像素,可以減少鋸齒、筆畫斷裂等由於顯示屏精度不夠而產生的不良效果,這種技術被稱爲“次像素渲染”。目前蘋果和微軟都採用了次像素渲染技術,但對於如何在精度遜於印刷品的顯示屏上實現較好的字體顯示效果,蘋果和微軟有着不同的理念。或者說,對於什麼才叫“好的顯示效果”,蘋果和微軟有着不同的理解。
這裏寫圖片描述
美觀和實用的交鋒

蘋果有着豐富的印刷和出版經驗,對印刷成品十分重視。蘋果認爲,在顯示屏上所顯示的字體應該和印刷出來的成品效果接近,這樣才能讓設計師“眼見即所得”,提高工作效率。爲此,Mac上面所顯示的字體都比較接近字體原樣,蘋果大量使用次像素渲染來增添字體的細節——即使這樣會導致字體看上去有些模糊。

微軟則有着長久的桌面系統開發歷史,從命令行到圖形界面,側重於考慮計算機用戶閱讀文字是否方便。微軟認爲,顯示字體的時候應該針對顯示屏作一定的優化,使之適應較低精度的像素分佈,獲得清晰效果,方便用戶閱讀。微軟在渲染字體的時候讓字體作了一定程度的變形,令字體看上去足夠清晰——即使會讓字體偏離本身設計的形狀。
這裏寫圖片描述
網友製作的對比圖

我們不能說哪種理念纔是正確的,因爲這兩種想法所針對的人羣不同。對於一個設計師來說,他會喜歡Mac,因爲他在Mac上製作的作品和最終的成品十分相似,不必反覆校對;而對於文字工作者來說(比如說小編),則會更傾向於Windows PC,因爲不必離屏幕很近也可以看清楚文字,能減輕眼球負擔。

有趣的是,蘋果和微軟在字體渲染方面理念的差別也導致了雙方機器設計的差別。蘋果的機器無論是Macbook還是iPhone,屏幕都拼命向高分辨率高精度發展,因爲高精度的屏幕可以極大減輕蘋果式渲染字體而導致的模糊,最終的結果就是得到幾乎和印刷品一樣精細而清晰的字體。而微軟則在新系統設計上大量使用大字號的文字——不明白的話可以看看Windows Phone的界面,這讓能令用戶十分容易看清楚界面的文字。
這裏寫圖片描述
Windows Phone UI中大字體隨處可見

說完了蘋果和微軟在字體渲染方面的差異,再說說Linux的字體渲染吧。很多朋友都覺得Linux太高端,完全不知道是什麼東西,實際上很多人手中把持着的Android設備,其系統就是基於Linux Kernel的。事實上Linux的字體渲染介於蘋果和微軟之間——不如蘋果精細,也不如微軟清晰,但是比其餘兩者泛用性都強。

Android設備的屏幕分辨率和質材各種各樣,從QVGA到720p,從RGB排列到Pentile排列,什麼奇葩都有。人們常常埋怨Android設備上顯示的字體不好看,實際上Android在這方面已經足夠好了。可以想象一下,如果Android使用Mac的方式渲染字體,那毫無疑問在很多低端機器上的字體都會糊成一坨;若使用Windows PC上的方式渲染字體,那在Pentile屏幕上字體的邊緣無疑會多出很多紅紅綠綠的馬賽克。
這裏寫圖片描述
Pentitle像素排列的屏幕(左)對字體的顯示並不好

4、MacType:強大的字體渲染工具

上面說到了各種機器渲染字體的方式不同,也沒有什麼優劣之分。但人總會有個喜好,有人說,我就是喜歡蘋果Mac上的那種字體渲染,但是又由於種種原因不得不使用Windows PC,每次看到Mac都羨慕嫉妒恨啊。
這裏寫圖片描述
有人就是喜歡Mac的字體

這也的確,Windows PC上面的字體,特別是中文字體,特別特別是除了雅黑之外的中文字體,雖然能看得很清楚,但是缺乏美觀。這是因爲除了雅黑全字號使用ClearType次像素渲染技術外,其他大多數中文字體在小字號的時候爲了保持清晰度,使用了點陣顯示,效果類似於古董貨點陣字體。這怎麼看都明顯不夠LifeStyle啊,一夜回到解放前啊親,於是有人就在想能不能在Windows PC上使用類似Mac的字體渲染了。
這裏寫圖片描述
中文非雅黑字體在小字號下會以點陣顯示

在Windows PC上,我們可以通過第三方軟件接管Windows的字體渲染功能,來實現其他渲染方式。這裏我們使用的是一款叫“MacType”的軟件。

軟件名稱: MacType
軟件版本: 2012
軟件大小: 3.59MB
軟件授權: 免費
適用平臺: Win9X Win2000 WinXP Win2003 Vista Win7
下載地址: http://dl.pconline.com.cn/download/91429.html

MacType的前身是日本人寫的一款開源軟件gdi++,可以通過進程注入自己的動態鏈接庫截取Windows的字體渲染引擎Windows GDI+(gdi32.dll)來接管Windows的字體渲染。gdi++允許自定義字體類型和字體的渲染效果,深得用戶喜愛,可惜的是gdi++在2006年停止了更新。

由於gdi++是開源軟件並且品質優秀,自然而然會有第三方的開發者使用其源代碼進行開發。MacType就是一款使用了gdi++源代碼的軟件,在繼承了gdi++的優秀特性的同時,也開發了一些新功能。至於MacType的實際使用效果如何,我們下面一起來看看。

首先我們下載MacType的安裝程序。MacType支持Windows XP和Windows 7(包括32位和64位)等主流操作系統,但是並不支持Windows 8。安裝MacType以後,會出現一個用戶嚮導,可以選擇MacType的加載模式,嚮導界面中對各種模式的特點也有說明。
這裏寫圖片描述
MacType嚮導界面:選擇加載模式

這裏推薦使用MacTray托盤加載。使用托盤加載可以很方便地實時更換各種字體渲染方式,也很容易開啓和關閉MacType,對系統也沒有額外的改動。

接着MacType會讓你選擇一個配置文件,不同的配置文件有不同的效果,其中差異大家可以親自嘗試。我們也可以點擊左下角的“進程管理”來讓MacType只對特定的進程進行字體渲染,之後嚮導就完成了。
這裏寫圖片描述
Mactype嚮導界面:選擇配置文件及渲染進程

選擇MacTray托盤加載模式以後,MacType會在通知區域顯示一個托盤圖標。我們可以雙擊圖標來選擇對哪些進程加載MacType,也可以右擊圖標來設置MacType,選擇配置文件,或者自定義配置文件。

MacType的配置十分詳細,可以用MacTray Tuner和記事本兩種方式對字體的渲染核心、反鋸齒等一系列特性進行調整,或者是對某些字體進行替換,並且給出實時預覽。由於MacType可以對字體渲染方式作十分詳細的配置,所以我們可以把字體渲染成蘋果Mac風格的,也可以渲染成Windows風格的,還有其他效果,其中妙處大家可以慢慢體會。
這裏寫圖片描述
使用MacType Tuner修改配置文件

這裏寫圖片描述
點擊“高級”後有更多詳細選項

當然,我們也可以去網上下載他人的配置文件來嘗試別人配置好了的渲染效果。不過MacType自帶的字體渲染效果就有12個,一般而言已經夠用了。

配置好MacType以後,很明顯可以看到字體的渲染方式有了變化。至於效果如何,大家可以親自試試。
這裏寫圖片描述
開啓MacType前

這裏寫圖片描述
開啓MacType後

5、後話

字體雖小,學問卻大。字體的問題涉及計算機運算、顯示、影印、美術等多個方面,本文所提到的不過是九牛之一毛。然而字體的重要性又是不言而喻的,我們可以離開圖形,但即使回到命令行的時代我們也離不開文字。小小字體美觀與否,甚至能影響一個人的心情乃至心態。最後,願各位每天都有好心情。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章