後備字體

後備字體Fallback font)是指在當時顯示的字型缺乏某些字元時,被用於顯示缺失字元的字體。因為其作為顯示的最後一道防線,後備字體應該盡可能包含所有Unicode字元。

當缺失字元沒有後備字體用於顯示時,通常會將缺失字元改為黑色方塊、白色空心方塊、問號、Unicode佔位字元(U+FFFD)顯示,或者乾脆略過該字元。在實務上,像是CSS等支援字體列表依序顯示的系統,通常會將一或多套後備字體置入列表最後,以防止缺字的情況發生。

Unicode BMP Fallback字型

 0 0 
 2 0 

Unicode BMP Fallback是一套最早用於偵錯用途的後備字型。BMP代表的是Unicode字元平面的基本多語言平面(Basic Multilingual Plane)。在該字型中,每個字元都是用方框圍住的四位數十六進位編碼。[1]左方的圖案是該字型的示意圖,展示了一個空白字元(U+0020)。

不像下述的Unicode Last Resort字型,Unicode BMP Fallback字型只能顯示Unicode標準的第零平面,也就是基本多語言平面中的65536種字元。這是因為其字體設計每字元容納四個編碼,因此只能對應U+0000(=0)至U+FFFF(=65535)的字元,也就是第零平面。

Unicode Last Resort字型

 
範例字元,來自蘋果電腦的Apple Last Resort字型。

此字型是統一碼聯盟在制定Unicode 5.0時所提供一套包含所有Unicode平面的後備字型。該字型是Mac OS X Last Resort系統字型的衍生版,由蘋果公司授權讓統一碼聯盟在非蘋果平台上使用。[2] 该字型在 Unicode 14.0 版(2021 年)中以SIL开源字体授权释出。[3]

該字型的字元以粗黑圓角方框圍住,中間以該編碼區段的代表字元顯示,讓使用者能大略知道缺失文字的語言。在粗框的左右,各記載了該區段的Unicode十六進位編碼起始值與終止值,上下則寫出該區段的敘述。[4]

不像Unicode BMP Fallback或GNU Unifont,Unicode Last Resort字型不會針對每個字繪製不同的字元,而是對該區段直接用同一字元顯示。這樣的設計事實上是對常見字體標準,TrueTypeOpenTypePostScriptWOFF等的妥協。由於常見的字體標準皆採用sfnt定址,因此只允許在十六位元的定址空間內提供最多65536(FFFF)個不同的字元。然而,今日的Unicode已經有超過十萬種字元,理論定址空間也超過一百萬種字元,是sfnt定址允許的約15倍大小。因此,儘管隨著時間推進,Unicode定義的字元只會越來越多,Unicode Last Resort後備字型卻仍能將未來的所有字元全部收錄。

參見

參考資料

  1. ^ SIL International (March 20, 2008), Unicode BMP Fallback font. Retrieved August 28, 2011.
  2. ^ Apple Computer (November 2, 2002), Last Resort font页面存档备份,存于互联网档案馆). Retrieved August 27, 2011.
  3. ^ Last Resort Font, The Unicode Consortium, 2022-02-10 [2022-02-11], (原始内容存档于2022-02-11) 
  4. ^ Apple Computer (February 2, 2002), Last Resort Font Glyph Table页面存档备份,存于互联网档案馆). Retrieved August 28, 2011.