TTF、TOF、WOFF 和 WOFF2 的相關概念


字體概念.001

前言

在上一篇文章中,我引入了 TTF 格式的字體文件來解決各平台字體表現不統一的問題。

但其實那不是最優解決方案,因為字體文件不止有 TTF 格式,常見的字體格式還有 OTF、WOFF 和 WOFF2 等。

今天,我來總結一下最常見字體格式的相關概念,方便以后在使用的時候可以做出最優選擇。

TTF(TrueType Font)

TrueType 是由美國蘋果公司和微軟公司共同開發的一種電腦輪廓字體(曲線描邊字)類型標准。

這種類型字體文件的擴展名是 .ttf,類型代碼是 tfil。

TrueType的主要強項在於它能給開發者提供關於字體顯示、不同字體大小的像素級顯示等的高級控制。

其兼容性如下:

image-20220130224859429

OTF(OpenType Font)

OpenType 是 Adobe 和 Microsoft 聯合開發的跨平台字體文件格式,也叫 Type 2 字體,它的字體格式采用 Unicode 編碼,是一種兼容各種語言的字體格式。

OpenType 也是一種輪廓字體,比TrueType 更為強大,並且還支持多個平台,支持很大的字符集,還有版權保護。可以說它是Type 1和 TrueType 的超集。

OpenType 標准定義了 OpenType 文件名稱的后綴名:

  • 包含 TrueType 字體的 OpenType 文件后綴名為 .ttf
  • 包含 PostScript 字體的文件后綴名為 .OTF
  • 如果是包含一系列 TrueType 字體的字體包文件,那么后綴名為 .TTC

OTF 的主要優點有:

  1. 增強的跨平台功能;
  2. 更好的支持Unicode標准定義的國際字符集;
  3. 支持高級印刷控制能力;
  4. 生成的文件尺寸更小;
  5. 支持在字符集中加入數字簽名,保證文件的集成功能。

同一個 OpenType 字體文件可以用於 Mac OS,Windows 和 Linux 系統,這種跨平台的字庫非常方便於用戶的使用,用戶再也不必為不同的系統配制字庫而煩惱了。

OTF 的兼容性和 TTF 相同。

WOFF(Web Open Font Format)

Web 開放字體格式是一種網頁所采用的字體格式標准。此字體格式發展於 2009 年,現在正由萬維網聯盟的 Web 字體工作小組標准化,以求成為推薦標准。

此字體格式不但能夠有效利用壓縮來減少檔案大小,並且不包含加密也不受 DRM(數位著作權管理)限制。

WOFF 本質上是包含了基於 sfnt 的字體(如 TrueType、OpenType 或開放字體格式),且這些字體均經過 WOFF 的編碼工具壓縮,以便嵌入網頁中。這個字體格式使用zlib壓縮,文件大小一般比 TTF 小 40%。

其兼容性如下:

image-20220130224605119

WOFF2

WOFF 2 標准在 WOFF1 的基礎上,進一步優化了體積壓縮,帶寬需求更少,同時可以在移動設備上快速解壓。

與 WOFF 1.0 中使用的 Flate 壓縮相比,WOFF 2.0 是使用 Brotli 方法進行的壓縮,壓縮率更高,所以文件體積更小。

其兼容性如下:

image-20220130224713567

補充概念

在上面的概念中,出現了 Type 1 字體Type 2 字體的說法,我在這里補充一下它們兩個的相關概念。

Type 1 字體

Type 1 字體於 1984 年由 Adobe 引入,與其 PostScript 頁面描述語言一起使用,隨着可使用 PostScript 的桌面出版軟件和打印機的普及而得到了廣泛使用。1996 年,Adobe 產品和文字開發開始重點關注用途更為廣泛的 OpenType 字體,對 Type 1 的關注減少了。

image-20220130211511220

Type 2 字體

Open Type 字體也叫 Type 2 字體,這個叫法其實也是為了對應 Type 1 字體而產生的,表示比 Type 1 更進一步。

總結

通過上面的概念,可以看出:

  • TTF 的兼容性更好,但是其字體文件體積最大。
  • WOFF 字體比 TTF 字體有更小的體積和更好的表現性。
  • WOFF 2 字體是對 WOFF 字體的升級。

所以,如果不考慮兼容性的話,字體使用首推 WOFF 2 ,這也是我在文章開頭說使用 TTF 並非最優解決方案的原因,大家可以根據自己的實際情況,酌情選擇合適的字體文件,以達到性能優化的目的。

~
本文完,感謝閱讀!

~

學習有趣的知識,結識有趣的朋友,塑造有趣的靈魂!

大家好,我是〖編程三昧〗的作者 隱逸王,我的公眾號是『編程三昧』,歡迎關注,希望大家多多指教!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM