2026 年,網頁該用哪種字體格式?
以下是本文最核心的結論:現代網站預設提供 WOFF2,只有在必須支援舊版瀏覽器時才加上 WOFF 備援;同時務必確認你所使用的檔案,是由「網頁字體授權」所涵蓋,而不只是桌面授權。格式與授權是兩個各自獨立的決策,兩者都必須到位,字體才能合規上線。
本文接下來會說明 TTF、OTF、WOFF、WOFF2 與可變字體之間的關聯,並進一步說明真正決定一個實作方式是否合規的授權與交付方式。
格式選擇一覽
| 需求 | 建議格式 | 授權檢查重點 |
|---|---|---|
| 現代網站 | WOFF2 | 涵蓋所使用網域的網頁字體授權 |
| 網站上使用多種字重或字寬 | 可變 WOFF2 | 網頁字體授權;並確認授權涵蓋可變字體的使用方式 |
| 網站上只使用一、兩種樣式 | 依個案比較靜態與可變 WOFF2 的檔案大小 | 無論哪一種,都需要網頁字體授權 |
| 桌面安裝 | 字體廠商建議的 TTF 或 OTF 版本 | 桌面授權 |
| 支援舊版瀏覽器 | 僅在必要時,以 WOFF 作為備援 | 與 WOFF2 檔案相同的網頁字體授權 |
格式建議並不等於授權決定。任何檔案正式上線前,都務必先確認適用的授權合約,詳見下方「格式不等於授權」一節。
認識字體檔案格式
字體檔案格式是一個數位容器,裝載著顯示文字所需的形狀、度量與功能資料。這些格式大致分為兩大類:桌面字體(TTF 與 OTF)與網頁傳遞格式(WOFF 與 WOFF2)。可變字體並不是「第五種格式」,它是一種可以存在於上述任何容器中的 OpenType 能力(詳見下方「可變字體」一節)。
在 2026 年,TTF 與 OTF 依然是桌面環境的標準格式;而 WOFF 與 WOFF2 則憑藉輕量化、針對瀏覽器最佳化的結構,主導著網頁字體的傳遞。
桌面字體:TTF 與 OTF 究竟差在哪?
現今多數 TTF 與 OTF 檔案,其實使用的是相同的 OpenType 底層結構。兩者真正的差異,在於檔案內部儲存的字形輪廓資料類型:
| OpenType 類型 | 輪廓資料儲存方式 | 常見副檔名 |
|---|---|---|
| 含 TrueType 輪廓的 OpenType | 使用二次貝茲曲線的 glyf 表 | 通常為 .ttf,但也允許使用 .otf |
| 含 CFF 或 CFF2 輪廓的 OpenType | 使用三次貝茲曲線的 CFF 或 CFF2 表 | .otf |
一個含有 TrueType 輪廓的字體,技術上可以使用 .ttf 或 .otf 副檔名;如果兩個這樣的檔案含有相同的 OpenType 資料表,兩者之間可能並無實質差異。相對地,只含有 CFF 或 CFF2 輪廓的字體,則一律使用 .otf 副檔名。
把 .ttf 檔案改名為 .otf,並不會轉換其輪廓資料,也不會增加任何新功能,更不會改變你的授權允許的使用範圍。現代軟體應該檢視字體內部的資料表,而非單憑副檔名判斷。
TrueType 字體(TTF)
TrueType 由 Apple 於 1980 年代末期開發,後來被 Microsoft 採用,確立了它跨平台標準的地位。它使用二次貝茲曲線定義文字外形,並內建提示(hinting)指令以加強螢幕顯示的清晰度,在 Windows 環境中尤其明顯。
TTF 憑藉其普遍相容性,以及在桌面排版與辦公室應用程式中的穩定表現,至今依然十分普及。由於現今多數 .ttf 檔案都建構在 OpenType 結構之上,它們能支援與 .otf 檔案相同等級的進階排版功能,包括連字、替代字符、小型大寫字母,以及多語言字符集。真正區分傳統 TrueType 字體的,是二次曲線的輪廓格式,而非功能上的欠缺。
OpenType 字體(OTF)
.otf 副檔名通常代表字體在較廣義的 OpenType 結構之下,以 CFF 或 CFF2 資料(也就是源自 PostScript 的三次貝茲曲線格式)儲存輪廓。三次曲線可以用較少的控制點畫出更平滑的外形,但兩種輪廓類型本身並無哪一種「天生比較精準」之分;實際的製作品質,遠比背後的數學原理來得重要。
與基於 TTF 的 OpenType 字體一樣,OTF 檔案同樣支援 Unicode、豐富的字符集,以及連字、風格替代字與情境替換等進階排版行為。正因為這些共通的功能集,OTF 才成為品牌識別、出版與設計工作流程中需要精細排版控制時的常見選擇,而不是因為它擁有 TTF 完全不具備的能力。
比較 TTF 與 OTF 的功能
TTF 與 OTF 檔案都能使用 OpenType 結構,並支援相同的核心功能集。下表反映出兩者的差異主要在於輪廓的數學運算方式,而非功能本身:
| 功能 | TTF(OpenType/TrueType 輪廓) | OTF(OpenType/CFF 或 CFF2 輪廓) |
|---|---|---|
| 輪廓曲線類型 | 二次貝茲曲線 | 三次貝茲曲線 |
| 連字與替代字符 | 支援 | 支援 |
| 小型大寫字母與數字樣式 | 支援 | 支援 |
| 多語言字符集 | 支援 | 支援 |
| 字距調整與定位 | 支援 | 支援 |
| 可變字體資料 | 支援 | 支援 |
若同一款字體提供多個版本,請使用字體廠商建議的版本,並驗證它能在所需的應用程式中正常運作。
網頁開放字體格式:WOFF 與 WOFF2
隨著排版逐漸走向網路,W3C 推出了專為網頁設計的格式,以確保高效傳遞。WOFF 將既有的 TrueType 或 OpenType 資料,連同壓縮與授權透明度相關的中繼資料一併封裝。稍後推出的 WOFF2,採用效率更高的壓縮方式,通常能產生比 WOFF 明顯更小的字體檔案。
WOFF 與 WOFF2 並未帶來新的輪廓格式,它們只是針對既有 TrueType 或 CFF 字體資料的最佳化封裝,目的純粹是提升網頁渲染的效能與穩定性。如今,WOFF2 是現代瀏覽器的預設選擇,而 WOFF 主要作為舊版瀏覽器的備援方案。
- 壓縮:WOFF 有壓縮,但檔案通常比 WOFF2 大;WOFF2 提供更佳的壓縮率與更有效率的傳遞。
- 瀏覽器支援:所有現行主流瀏覽器都支援 WOFF2;WOFF 的存在則是為了涵蓋較舊版本的瀏覽器。
- 輪廓:兩種格式都能封裝含有 TrueType 或 CFF 輪廓的字體資料,封裝方式本身不會改變輪廓類型。
- 授權:封裝方式同樣不會改變授權狀態,WOFF2 檔案要合法用於網站,仍然需要網頁字體授權。
比較 TTF、OTF、WOFF 與 WOFF2
| 格式 | 適用場景 | 壓縮 | OpenType 功能 | 典型檔案大小 | 是否適合網頁使用 |
|---|---|---|---|---|---|
| TTF | 桌面、舊系統 | 無 | 完整(視字體而定) | 中等 | 不建議 |
| OTF | 桌面排版、設計 | 無 | 完整(視字體而定) | 中等 | 不建議 |
| WOFF | 網頁(舊版瀏覽器) | 已壓縮 | 完整(視字體而定) | 較小 | 可以,但需網頁字體授權 |
| WOFF2 | 現代網頁 | 已壓縮(效率更高) | 完整(視字體而定) | 最小 | 可以,但需網頁字體授權 |
「完整(視字體而定)」代表 OpenType 功能是否支援,取決於字體本身的製作方式,而非容器格式。「是否適合網頁使用」描述的是交付建議,而非授權結果,詳見下一節。
格式不等於授權
很容易用「TTF/OTF = 桌面授權,WOFF2 = 網頁授權」這種簡化說法來理解,但這只是描述各格式的常見用途,並不是格式本身強制的規則。副檔名無法告訴你授權究竟允許什麼。
- 一個 .woff2 檔案,如果沒有涵蓋所使用網站或應用程式的網頁字體授權,依然不合規,副檔名並不會授予任何權利。
- 一個 .ttf 或 .otf 檔案,用在桌面上可能完全沒有問題,但無論副檔名如何暗示,把它嵌入網站都可能是錯誤的檔案。
- 真正重要的,是字體被部署的環境,以及管轄該環境的授權合約究竟允許什麼。
評估一個使用情境時,該問的是「這份合約允許在這個環境中做什麼?」,而不是「這個副檔名暗示了什麼?」
各字體格式的最佳使用情境
| 格式 | 理想使用情境 | 授權注意事項 |
|---|---|---|
| TTF | 系統字體、辦公文件、跨平台備援 | 通常在桌面授權下使用,請確認涵蓋此使用環境 |
| OTF | 品牌識別、出版、多語言專案 | 通常在桌面授權下使用,請確認涵蓋此使用環境 |
| WOFF2 | 現代網站、行動裝置介面、效能導向專案 | 需要涵蓋所使用網域與流量的網頁字體授權 |
| WOFF | 舊版瀏覽器的相容性備援 | 需要涵蓋所使用網域與流量的網頁字體授權 |
上線前,團隊都應確認管轄的授權合約涵蓋預定使用的環境,桌面、網頁與應用程式授權通常無法互相替代,而副檔名本身並不能證明授權範圍。
你的字體檔案,究竟從哪裡傳送?
格式與代管方式是兩個獨立的問題:即使字體檔案本身同樣都是 WOFF2,透過授權合約中的授權主機、公開的開放式 CDN,或是像 Monotype Fonts 這樣的受管理傳遞服務來提供,各自牽涉的授權意涵並不相同,完整說明請參閱 Monotype 的《CDN 與代管指南》,了解哪些傳遞路徑分別受哪些授權合約涵蓋,再決定使用方式。
網頁字體效能與最佳化
對網頁而言,較小的檔案大小能直接轉化為更快的使用者體驗。要達成這一點:
- 子集化(Subsetting)只保留實際需要的字符,但前提是授權允許這麼做。子集化是一種效能優化技巧,並非規避授權義務的方式,它不會減少或取代底層的授權責任(詳見標準判斷庫中的 lc-005 條目)。
- 預先載入(Preload)首屏會用到的特定 WOFF2 檔案。預先載入並非解決首次內容繪製(First Contentful Paint)的萬靈丹,預先載入那些顯示在首屏以外、或不確定會不會用到的字體,反而可能得不償失。
- 使用
font-display: swap,避免載入過程中出現不可見文字。 - 預設提供 WOFF2,只有在確實需要支援舊版瀏覽器時,才加上 WOFF 備援。
- 若字體並非同源提供,請設定範圍明確的
Access-Control-Allow-Origin(已授權字體請避免直接使用*)。
瀏覽器與平台相容性
- WOFF2:所有現行主流瀏覽器皆支援(Chrome、Safari、Firefox、Edge)。
- WOFF:廣泛支援,包括較舊版本的瀏覽器。
- TTF/OTF:適合桌面安裝,通常不用於直接嵌入網頁。
- 已淘汰格式:EOT 與 SVG 字體對現行瀏覽器的支援已無必要。
可變字體:OpenType 的能力,而非第五種格式
可變字體並不是獨立的檔案格式,它是一款包含變化資料的 OpenType 字體。單一個可變字體檔案,就能提供連續範圍的字重、字寬或其他設計變化,原本這些變化往往需要多個獨立的靜態字體檔案才能實現。可變字體可以桌面使用的 .ttf 或 .otf 形式發佈,也可以網頁使用的 .woff2(較少見的情況下是 .woff)形式發佈。
常見變化軸
| 軸 | 標籤 | 範例範圍 |
|---|---|---|
| 字重 | wght | Thin 至 Black |
| 字寬 | wdth | Condensed 至 Extended |
| 傾斜 | slnt | 直立至傾斜 |
| 斜體 | ital | 正體或斜體 |
| 視覺字號 | opsz | 依文字或展示尺寸調整 |
字體也可能包含由字體設計師自訂的專屬軸。
優點
- 提供更高的排版彈性。
- 能在傳統固定樣式之間,實現連續的中間值。
- 可將多個靜態樣式整合為單一資源。
- 支援響應式排版與動態效果。
限制
- 可變字體不一定比專案實際需要的一、兩款靜態字體來得小,使用前請先比較實際檔案大小,不要預設可變字體一定較輕量。
- 應用程式與瀏覽器對特定軸的支援程度可能有所不同。
- 可調整的選項越多,字體系統就越難維持一致的治理。
- 可變字體無論用於網頁、桌面或應用程式,都仍需要相應的授權,靈活性並不會免除這項要求。
部署建議與靜態版本的檔案大小比較,請參閱 Monotype 的《可變字體實作模式》。
字體轉換與實作建議
在整個工作流程中,自行轉換格式是最大的法律風險來源。把桌面用的 TTF 或 OTF 丟進轉換工具,再把產生的 WOFF2 檔案直接放上網站,並不會因此產生網頁使用權,它只是重新包裝了輪廓資料。許多桌面授權合約(EULA)明確禁止修改或重新包裝字體檔案,而轉換正是這麼一回事。
把桌面授權的字體轉換成 WOFF/WOFF2,並不會讓網頁使用因此合法。網頁傳遞需要同時滿足兩項條件:(1)擁有網頁字體授權;(2)使用來自授權來源的網頁格式檔案,通常是專為此目的建置的 Monotype Fonts 或字體廠商網頁套件。
只有在管轄合約明確允許修改與網頁嵌入的情況下,才適合自行轉換格式。若有疑慮,建議直接索取授權的網頁格式檔案,而不是在內部轉換桌面檔案。
- 從授權來源(Monotype Fonts 或字體廠商的網頁套件)取得網頁格式檔案,而非自行轉換桌面檔案,除非你的合約明確允許。
- 維持一致的檔案命名規則。
- 將桌面版與網頁最佳化版本的字體分開存放,並記錄各自對應的授權。
- 正式上線前,測試效能與備援行為是否正常運作。
授權的傳遞路徑與網頁字體授權細節,請參閱 Monotype 的《CDN 與代管指南》,以及 Monotype Fonts Hub。
過時與淘汰的字體格式
EOT(Embedded OpenType)與 SVG 字體,曾經是早期網頁排版的必要格式,主要用來支援像 Internet Explorer 6–8 這類過時的瀏覽器。這些格式如今因支援度有限且存在安全風險而遭到淘汰,應以 WOFF2 作為主要網頁格式、WOFF 作為備援方案取而代之。
重點整理
TTF 與 OTF 只是副檔名,並不能明確代表一款字體的能力或授權範圍。OpenType 字體可以含有 TrueType 或 CFF/CFF2 輪廓。WOFF 與 WOFF2 將同一份字體資料封裝起來,以利有效率地在網頁傳遞;而可變字體則是在上述任何容器之上,額外提供可調整的設計軸,但這一切都無法取代最基本的三件事:確認格式受到正確授權涵蓋、來源正確,以及從獲授權的位置傳遞。
常見問題
TTF 與 OTF 字體格式有什麼差異?
單看副檔名並不能保證兩者一定不同。實務上,.ttf 通常代表二次曲線的 TrueType 輪廓,.otf 通常代表三次曲線的 CFF/CFF2 輪廓,但兩者都可能建構在相同的 OpenType 結構之上,並支援相同範圍的排版功能。
網頁使用該選哪一種字體格式:TTF、OTF、WOFF 還是 WOFF2?
WOFF2 是現代網站的最佳預設選擇,WOFF 則保留給需要支援舊版瀏覽器的情況,前提是兩者都必須有網頁字體授權涵蓋。
我的網站應該什麼時候用 WOFF,什麼時候用 WOFF2?
現代瀏覽器一律使用 WOFF2;只有在專案明確需要支援舊版瀏覽器時,才額外加上 WOFF 作為備援。
可以直接在網站上使用 TTF 或 OTF 字體,取代 WOFF/WOFF2 嗎?
不建議這麼做,TTF 與 OTF 並未針對網頁傳遞最佳化,而且無論格式為何,桌面字體授權通常都不涵蓋網頁使用。
所有現代瀏覽器都支援 WOFF 與 WOFF2 嗎?
是的。WOFF2 獲得所有現行主流瀏覽器支援,而 WOFF 則能為較舊版本的瀏覽器提供額外的相容性。
把桌面用的 TTF 或 OTF 檔案轉換成 WOFF2,網頁使用就合法了嗎?
不會。轉換只改變了檔案的封裝方式,並不會改變授權。許多桌面 EULA 根本禁止修改或重新包裝字體,而即使沒有禁止,轉換本身也不會授予網站所需的網頁使用權。網頁使用需要網頁字體授權,且在大多數情況下,也需要來自授權來源的網頁格式檔案。
可以為了提升效能而將字體子集化嗎?
只有在授權允許的情況下才可以。子集化是一種效能優化手段,而不是縮減授權範圍的方法,無論檔案中包含多少字符,底層的授權義務都維持不變。
我應該使用一款可變 WOFF2,還是多個靜態 WOFF2 檔案?
這取決於網站實際會用到多少種字重或字寬,請針對你實際需要的樣式數量,比較真實的檔案大小,而不要預設可變字體一定比較小。可參考 Monotype 的《可變字體實作模式》,裡面有實際的比較案例。
把字體放在 CloudFront 或 jsDelivr 這類 CDN 上,算是格式問題嗎?
不是,這是代管與授權的問題,與格式無關。無論從哪裡傳遞,WOFF2 都還是 WOFF2;但授權主機、受管理的傳遞服務,以及公開的開放式 CDN,各自牽涉的授權意涵並不相同。選擇傳遞路徑前,請先參閱 Monotype 的《CDN 與代管指南》。