TTF、OTF、WOFF 差在哪?字型格式安裝與網頁使用指南 | UltKit
電腦上安裝 TTF 或 OTF,網站上提供 WOFF2。TrueType 與 OpenType 是所有作業系統都能讀取的桌面字型格式;WOFF 與 WOFF2 則是同樣的字型資料經過壓縮、方便下載的版本,瀏覽器偏好 WOFF2,因為它大約小 30%。
該用哪種字型格式:TTF、OTF、WOFF 還是 WOFF2?
安裝在電腦上,請用 TTF 或 OTF,兩者在 Windows、macOS 和 Linux 都能使用。放在網站上,請優先提供 WOFF2,WOFF 只當作備援。把原始 TTF 或 OTF 檔直接放上網頁,檔案會比需要的大 2–3 倍。
TrueType、OpenType、WOFF 與 WOFF2 簡單說明
TrueType 是這四種格式中最早的。Apple 在 1991 年隨 System 7 推出,Microsoft 隔年將它用於 Windows 3.1。TrueType 字型以二次曲線描述每個字母,每段曲線只有一個控制點,在早期硬體上繪製成本低。它也內建微調(hinting):字型內的小程式會把筆畫和曲線對齊到像素格線,讓文字在低解析度螢幕上依然清晰。.ttf 副檔名至今仍代表使用這類二次輪廓的字型。
OpenType 由 Microsoft 與 Adobe 在 1996 年發表,它是一種封裝格式,而不是新的輪廓類型。它可以包含 TrueType 輪廓,也可以包含存放在 CFF 表中的 PostScript 輪廓,後者使用三次曲線,每段有兩個控制點。在輪廓之外,它加入了進階排版所需的版面配置表:標準與選用連字、小型大寫、舊式數字、樣式集、上下文替代字形和字距調整。依慣例,以 CFF 為基礎的 OpenType 字型存成 .otf,而採用 TrueType 輪廓的 OpenType 字型則維持 .ttf 副檔名。
WOFF 和 WOFF2 是為網頁設計的封裝格式。WOFF 於 2009 年起草,2012 年成為 W3C 建議標準,以 zlib 壓縮每個字型表。WOFF2 在 2018 年成為 W3C 建議標準,改用 Brotli,並先預處理字形資料,通常比 WOFF 小約 30%。另外還有三種相關格式:EOT 是 Internet Explorer 專用的網頁格式,SVG 字型是只有 Safari 支援的早期權宜之計,而 2016 年隨 OpenType 1.8 加入的可變字型,能把一整段字重或字寬範圍放進同一個檔案。
1991
TrueType
Apple 隨 System 7 推出二次輪廓與微調;Windows 3.1 於 1992 年跟進。
1996
OpenType
Microsoft 與 Adobe 發表可容納 TrueType 或 CFF 輪廓的單一容器,並加入版面配置功能。
2012
WOFF 1.0
2009 年起草,之後成為 W3C 建議標準:資料表相同,改用 zlib 壓縮。
2016
可變字型
OpenType 1.8 讓一個檔案容納連續的字重、字寬或傾斜軸。
2018
WOFF2
採用 Brotli 的 W3C 建議標準;通常比 WOFF 小約 30%。
電腦上該安裝哪種字型格式
安裝 TTF 或 OTF 即可,不必在意選哪一種。Windows 10 和 11 按右鍵選擇安裝就能裝好兩者,macOS 用「字體簿」開啟,Linux 桌面環境則在字型快取更新後,從 ~/.local/share/fonts 載入。Word、Photoshop、Figma 桌面版、Affinity 和 LibreOffice 都能讀取。如果設計師同時給你兩種版本的同一字型家族,OTF 通常是字型設計師的原始繪製版本,TTF 則是為舊軟體做的轉換版。
兩者有差別的情況很少。部分刻字機和刺繡程式、遊戲引擎以及微控制器顯示函式庫只支援 TrueType 輪廓,以 CFF 為基礎的 OTF 在這些地方會顯示異常,需要先將 OTF 轉換為 TTF。反過來說,桌面系統無法直接安裝 WOFF 或 WOFF2,這些檔案是為瀏覽器打包的。同一個字型家族只要安裝一個版本,因為內部名稱相同的 TTF 和 OTF 會讓字型選單混淆,應用程式可能選到錯的那一個。
- TrueType 集合(TrueType Collection).ttc · 字型集合 · .otc
- 單一檔案內存放多個字型,通常是同一字型家族的各種樣式或語言版本,並讓它們共用相同字形以節省空間。Windows 和 macOS 會一次安裝其中所有字型;Noto Sans CJK 等系統中日韓字型家族常以這種方式發行。以 CFF 輪廓建立的集合有時改用
.otc副檔名。
網站上該使用哪種字型格式
目前所有版本的 Chrome、Edge、Firefox 和 Safari 都能讀取 WOFF2,所以它應該是 @font-face 規則中的第一個來源,甚至是唯一來源。只有當你的分析資料仍顯示約 2016 年以前的瀏覽器,例如舊版 Android WebView 或內建電視瀏覽器時,才需要在後面加一行 WOFF。瀏覽器會依序檢查 src 清單,並下載第一個它支援的格式,所以備援對現代瀏覽器的訪客沒有任何成本。如果你已有桌面版 TrueType 檔案,用 TTF 轉 WOFF 一次就能產生這個備援檔。
除非平台強制要求(部分電子郵件編輯器和舊式內容系統就是如此),否則請避免在網站上直接提供原始 TTF 或 OTF。瀏覽器雖然能正常顯示,但除非伺服器對字型啟用 gzip,否則檔案會以未壓縮狀態傳輸,而且任何人都能直接拿到可安裝的桌面版。下方的 font-display: swap 會讓瀏覽器先以備用字型顯示文字,等你的字型載入後再替換,而不是等待並隱藏文字長達 3 秒。
盡量把字型檔放在自己的網域。Chrome、Safari 和 Firefox 現在都依網站分割快取,從共用 CDN 取得的字型不再能跨網站重複使用,而自行代管還能省下一次 DNS 查詢和連線。只對首屏使用的一兩種字重加上 <link rel="preload">;預先載入每一種樣式會與圖片爭搶頻寬。
@font-face {
font-family: "Source Serif";
src: url("/fonts/source-serif-regular.woff2") format("woff2"),
url("/fonts/source-serif-regular.woff") format("woff");
font-weight: 400;
font-style: normal;
font-display: swap;
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2013-2014, U+2018-201E, U+20AC;
}常見字型檔案大小,以及子集化為何重要
單一拉丁文字重存成 WOFF2,通常約 20–60 KB。同一字型若是未壓縮的 TTF,往往大兩到三倍;若字型家族還涵蓋希臘文、西里爾文和越南文,每種樣式可能超過 200 KB。中日韓字型則完全是另一個量級:完整的一種字重包含數萬個字形,即使經過 WOFF2 壓縮通常仍有數 MB,要等它載入完才顯示頁面文字,實在太慢。
子集化會移除頁面用不到的字元,而 unicode-range 則告訴瀏覽器某個檔案涵蓋哪些字元,因此只有頁面真的含有這些字元時才會下載該檔案。Google Fonts 處理中日韓字型時正是這樣做,把每個字型家族切成許多小片段,依需要載入。對於你自己的字型,字型轉換器中的保留字元選項可以在檔案上傳到伺服器前,把它精簡為 Latin + accents 或僅我輸入的字元;要安裝在電腦上的字型,請保留所有字元。
- WOFF2 格式的一般拉丁文字重
- 20–60 KB
- WOFF2 相較 WOFF 的一般縮減幅度
- ≈ 30%
- 完整中日韓字重,即使是 WOFF2 也一樣
- 數 MB
字型轉換:格式互轉時會失去什麼
在 TrueType 型字型之間,TTF 與 OTF 互轉只是更換容器:輪廓表、字型度量和版面配置功能都原封不動地搬過去。比較特別的是把以 CFF 為基礎的 OTF 轉成 TTF。三次曲線無法直接複製到二次輪廓格式,因此每條曲線會被重新繪製成一段或多段二次曲線,誤差遠小於一個像素。PostScript 微調指令同樣無法轉譯,所以 OTF 轉 TTF 工具提供的微調(Hinting)選項有保留、移除或自動微調。
從網頁格式轉回桌面格式是最常見的轉換。你下載了佈景主題或設計素材,卻只找到 .woff 或 .woff2 檔,而你需要在 Word 或 Figma 中使用該字型。WOFF 轉 TTF 會解除壓縮並寫回原本的資料表,因此字形、字距和功能都與原檔相同。無法恢復的是網頁版本已經丟掉的內容,例如子集化移除的字元,或為了省空間而刪去的微調資訊。
多數轉換問題都來自三件事:微調、版面配置功能和可變軸。下列清單整理了轉換後你可能注意到的狀況,以及各自常見的原因。
轉換後,小字在 Windows 上看起來模糊或不均勻
原本的微調資訊被移除,或無法帶過去。請將微調(Hinting)設為自動微調後重新轉換;在 Retina 和手機螢幕上,差異通常看不出來。
連字、小型大寫或樣式集失效
應用程式可能沒有開放 OpenType 功能,或子集化步驟刪掉了這些功能所對應的替代字形。請用所有字元重新轉換原始檔案,並確認你的應用程式有排版或 OpenType 面板。
可變字型現在只剩一種字重
有些工具會把可變字型壓平成單一靜態實例。請保留可變字型的原始檔,並在刪除原檔前先確認結果中有軸清單。
轉換後的字型在字型選單中出現兩次
兩個版本使用相同的內部字型家族名稱。請解除安裝舊檔,或在轉換前於進階設定中設定新的字型家族名稱。
使用或轉換字型前先檢查
字型檔就像一個小型資料庫,其中三個部分就能回答大多數問題。name 表存放字型家族名稱、樣式名稱、版本、著作權聲明,通常還有授權網址;macOS 的「字體簿」在資訊檢視中可以看到,Windows 的字型預覽則顯示開頭幾行。字形涵蓋範圍決定字型能排哪些語言:只含拉丁字母的字型遇到波蘭文、土耳其文或越南文中缺少的字元時,會默默改用其他字型。對於可變字型,fvar 表列出它的軸,例如 100 到 900 的字重,或 75 到 125 的字寬。
字型上線前值得先看一下授權。商業字型公司常把桌面、網頁和 App 授權分開販售,桌面授權通常只允許安裝在一定數量的電腦上,不包括提供給網站訪客下載,或內嵌到行動 App。轉換字型只會改變檔案格式,不會改變授權,所以由桌面 TTF 製作的 WOFF2 與該 TTF 適用相同條款。採用 SIL Open Font License 的字型(Google Fonts 大部分屬於此類)可以轉換、子集化並自行代管。
name表中的字型家族和樣式名稱正確無誤- 版本號碼與你打算使用的版本一致
- 你的文字所用的每種語言,都有對應的重音和特殊字元
- 可變字型仍列出字重或字寬軸
- 授權涵蓋你的用途:桌面、網站、App 或嵌入文件
選擇對照表:各種用途適合的字型格式
多數字型問題都歸結於檔案要放在哪裡。如果要安裝在電腦上或封裝進 App,就用 TrueType 或 OpenType;如果是由瀏覽器下載,就用壓縮的網頁封裝格式。下表把常見情境對應到該選的格式和轉換方式,讓你可以略過歷史,直接找到需要的檔案。
有兩種用途介於這些類別之間。EPUB 3 接受 TTF、OTF 和 WOFF,所以電子書可使用任一類格式;SVG 字型檔與向量圖屬於同一脈絡,但現在主要用於部分繪圖機和雕刻軟體,而非瀏覽器。
| 用途 | 建議格式 | 如果你只有 | 轉換 |
|---|---|---|---|
| 安裝在 Windows、macOS 或 Linux | TTF 或 OTF | WOFF 或 WOFF2 | WOFF → TTF |
| 不接受 OTF 的軟體 | TTF | 以 CFF 為基礎的 OTF | OTF → TTF |
| 自行代管的網站字型 | WOFF2 | TTF 或 OTF | TTF → WOFF2 |
| 給非常舊瀏覽器的備援 | WOFF | TTF | TTF → WOFF |
| 中文、日文或韓文網站 | 子集化的 WOFF2 片段 | 完整 TTF 或 OTF | 先子集化,再轉 WOFF2 |
| 單一檔案包含多種字重 | 可變 TTF 或 WOFF2 | 可變 TTF | 轉換時保留軸 |
| 電子書(EPUB 3) | TTF、OTF 或 WOFF | WOFF2 | WOFF2 → TTF |
重點整理
- 電腦上安裝 TTF 或 OTF;兩者在 Windows、macOS 和 Linux 都能使用。
- 網站優先提供 WOFF2,只有為了非常舊的瀏覽器才加上 WOFF,並設定 font-display: swap。
- WOFF 和 WOFF2 是壓縮封裝格式,轉換成它們改變的是下載大小,不是字形本身。
- 依文字系統和 unicode-range 做子集化;對動輒數 MB 的中日韓字型尤其重要。
- 轉換只會改變檔案格式,不會改變授權;若不小心,可能遺失微調或可變軸。
常見問題
OTF 的品質比 TTF 好嗎?
在一般大小下看不出任何差別。三次曲線與二次曲線都能描述相同的字母形狀,兩種格式也都支援相同的 OpenType 功能。OTF 檔常是設計師的原始繪製版本,這是偏好它的唯一實際理由。
為什麼下載的字型是 ZIP,裡面同時有 TTF、WOFF 和 WOFF2?
供應商是為每種用途各提供一個檔案。請把 TTF 安裝在電腦上,並把 WOFF2 上傳到網站;若想要備援,再加上 WOFF。
WOFF2 可以用在電子郵件中嗎?
只有部分可以。Apple Mail 和 iOS 郵件會從連結的樣式表載入網頁字型,而 Gmail 和 Windows 版 Outlook 會忽略自訂字型並顯示備用字型,所以 font-family 清單最後一定要加上安全的系統字型。
網站上可以使用 TTC 檔案嗎?
無法直接轉換。瀏覽器要求每個檔案只有一個字型,所以請先從集合中取出各個字型,再分別轉成 WOFF2。
可變字型能取代各字重的獨立檔案嗎?
通常會。涵蓋 100 到 900 字重的可變 WOFF2,通常比四個以上靜態字重加起來還小,而且目前所有瀏覽器都支援。如果你只用一兩種字重,靜態檔案可能還是比較輕。
還有必要產生 EOT 和 SVG 字型嗎?
很少需要。EOT 只對 Internet Explorer 8 及更舊版本有意義,而 SVG 字型已被目前的 Chrome 和 Firefox 忽略,所以只有為舊系統或會讀取它們的軟體才值得製作。
延伸閱讀
PNG 轉 SVG 教學:Logo、圖示與線稿的向量描圖
PNG 必須經過描圖才能變成真正的 SVG。了解哪些圖片適合描圖、如何準備 PNG、顏色與閾值該怎麼設定,以及如何檢查路徑。
Jonas Weber · 2026年10月4日 · 12 分鐘閱讀
STL、OBJ、3MF 差在哪?3D 檔案格式該用哪一種
STL 只存三角形,OBJ 透過 .mtl 檔加上 UV 與材質,3MF 把單位、顏色和列印設定打包成一個 ZIP。看看各格式最適合的使用情境。
Jonas Weber · 2026年9月2日 · 12 分鐘閱讀
ZIP、RAR、7z 比較:壓縮檔該用哪一種? | UltKit
ZIP 在所有電腦和手機都能開,7z 壓得最小且可隱藏檔名,RAR 有修復紀錄。比較壓縮率、加密、系統支援與各種限制。
Lucas Ferreira · 2026年9月27日 · 11 分鐘閱讀