TrueType 是由美國蘋果公司和微軟公司共同開發的一種電腦輪廓字型（曲線描邊字）類型標準。這種類型字型檔案的副檔名是 `.ttf`，類型代碼是 `tfil`。

早在 1980 年代末，蘋果公司為了對抗 Adobe 公司的 Type 1PostScript 字型，設計開發了 TrueType。之後微軟加入了開發，Windows 作業系統的字型格式基本上都統一成 TrueType，而在蘋果的 Mac OS 卻成了 PostScript 和 TrueType 對立的局面。TrueType 後來也被 Linux 等系統使用，成為標準字型。TrueType 的主要強項在於它能給開發者提供關於字型顯示、不同字體大小的像素級顯示等的進階控制。

在後來開發的 OpenType 類型字型中，可以選擇 PostScript 或 TrueType 作為記述方式。



歷史

蘋果

在麥金塔中，字型原先是儲存為手工調整的點陣字型檔案，為每個字型、特殊大小分別指定一個個的像素位置。如果使用者要看另一個大小的字型，字型管理器（Font Manager）找到最接近匹配，應用基本比例演算法來顯示。當比例放大到大字號的時候，效果就非常糟糕 —— 因為字型是點陣式的，字形就被放大成馬賽克式的鋸齒。

與之相對的，印表機的字型，如著名的 Apple LaserWriter 是基於 PostScript Type 1 輪廓，可以出色地輸出任何大小的文字。輪廓字型通過一套描繪曲線的算式來建立每個字元或「字形」。使用算式，電腦可以繪製出一個「輪廓」形狀，然後再「填充」進顏色（例如：黑色）從而列印出字元。這些算式可以按照比例進行縮放到任意大小，而與顯示器和印表機的解析度無關。無論是列印到膠片，還是顯示在螢幕上都具有同樣的品質。該技術曾經是一個重要的發明，並由 Adobe 公司創始人開發推行，稱為 PostScript。但另一個難點是 Type 1 字型是加密過的，Adobe 通過發售格式認證得到了相當可觀的收入，所以他們也不想向蘋果免費轉讓這個軟體。

而蘋果的 Sampo Kaasila 決客製化作一個全新的格式，代號為「Bass」。這個系統隨後被開發出來，稱為 TrueType，並在 1991 年 5 月隨 Mac OSSystem 7 發表。這些字型均含有 4 種字型的套裝，包括 _Times Roman_, _Helvetica_, _Courier_ 等大量字型，代替了原麥金塔系統中原有的點陣字型。為了能保證和老系統的相容，蘋果還發布了一個 TrueType 擴充，和一個 System Software 6 使用的 Font/DA Mover。

可是 TrueType 字型在實際的出版業界反應並不好。當時的狀況是，使用者已經花了大筆資金購買了 Type 1 字型，沒有必要進行更換，而且他們仍然要使用 Adobe Type Manager (ATM)。而且另外一個問題是，TrueType 格式的字型數量甚少，不值得他們更新。

為了對抗 Adobe，蘋果將 TrueType 認證給了微軟，並換來了 TrueImage—— 微軟開發的 PostScript 印表機控制語言，蘋果計劃使用在他們的雷射印表機上。不過這個列印語言最終沒有在任何蘋果的產品上實際使用。

儘管 ATM 並不是隨作業系統附，而需要另外購買，但是它已經成為桌面出版業界的實際標準。當 TrueType 發布的時候，Adobe 的 John Warnock 發表聲明，聲稱蘋果和微軟在兜售「騙人的萬靈油」，並隨後發布了可供任何人使用的 Type 1 格式作為出版標準。這給 TrueType 更大的壓力。蘋果於是更新了 Adobe 的協定，在其印表機上使用 PostScript。

蘋果在 1994 年發表了 TrueType GX 拓展了 TrueType，也是 QuickDraw GX 智慧型字型技術的一部分。這是在兩個主要領域的重要拓展：首先在字型軸線（morphing 變形），比如允許字型從細到粗、或從窄到寬平滑調整，與 Adobe 的 "multiple master" 技術對抗。第二就是自動替換，當字元組合為事先設計好的變體設計時可以進行自動替換，最常見的就是合字組合："fi", "ffi", "ct"，等等。但是，由於缺乏使用者友好的開發工具來建立 TrueType GX 字型，使得 GX fonts 字型寥寥。TrueType GX 中的多數技術，包括 morphing 變形和替換，現在都被囊括到 Mac OS X 系統的 AAT（Apple Advanced Typography）中。然而蘋果以外的字型開發者卻很少建立 AAT 字型，而都轉向支援 OpenType。

微軟

1991 年微軟把 TrueType 加入 Windows 3.1 作業系統。在與 Monotype 公司合作下，微軟花了大力氣製作了一批高品質 TrueType 字型，並使其可以與當時 PostScript 裝置捆綁的核心字型相容。其中包括了目前 Windows 系統的一些著名字型：Times New Roman 體（與 Times Roman 相容）、Arial 體（與 Helvetica 體相容）和 Courier New 體（與 Courier 體相容）。

請注意，所謂「相容」意味著兩層含義：第一，相容字型外觀非常相似；第二，也是很重要的，字型含有同樣的字元寬度，以便可以用來替代相同文件的內容而不需要重新排版調整。對於字型名稱的變化，除了 Arial 和 Helvetica 體；導致有人認為產生一個問題：每當一個特定的 Windows 字型命名之後，必須決定一個與其相當的蘋果或 PostScript 字型，反之亦然。儘管如此，雖然字型中字元輪廓資料本身不一樣，風格和字型被做的很相似，導致一般使用者很難區別開來。

微軟和 Monotype 的技術人員使用 TrueType 的「提示技術」（hinting technology）來解決字型在低解析度的顯示模糊問題。原先的技術是在小字號時改用點陣字型。後來的技術改進首先引入了抗鋸齒效果，可以平滑字型邊緣；現在常用的是「次像素補償」（微軟使用這個技術，並稱為 ClearType），使用液晶顯示器像素結構，以提高實際能顯示的解析度。微軟大力推廣這些技術，並擴充到各種平台。

微軟還開發了一個叫「智慧型字型」的技術，在 1994 年稱為 _TrueType Open_，然後在與 Adobe Type 1 技術合併後改名為 OpenType。

TrueType Collections (TTC) 允許將多個字型合併為一個檔案，為選擇的字型僅使用一些字型的不同字形建立替換間距儲存。最初只在中文、日文和韓國語版的 Windows 系統中使用，之後在 Windows 2000 支援所有區域。



TrueType 現狀

Macintosh 和 Windows

在目前的 Mac OS X 和 Windows XP 系統中，TrueType 是最常見的字型格式。雖然二者都包含對 Adobe 的 Type 1 格式和 OpenType 拓展的本地支援。可是現在很多字型已經改用 OpenType 格式，但是大多數免費廉價的第三方字型仍使用純 TrueType 格式。

目前的趨勢是，對螢幕補償的追求減少了對拓展 TrueType 提示技術（font hinting）的重要性。蘋果 Mac OS X 的補償技術幾乎忽略了所有 TrueType 字體中的所有提示資料，而微軟的 ClearType 也忽略了很多提示資料，並與「略加提示」的字體配合使用最佳。

Linux 及其他平台

文泉驛計劃提供了很好的 TrueType 中文字元支援，而且開源提供，被很多 Linux 版本支援。
David Turner 的 FreeType 專案期望建立一個獨立執行的 TrueType 標準（如同 Freetype 2 其他字型標準）。FreeType 包含很多 Linux 提供者。

在 FreeType 中有一些專利問題因為一部分 TrueType 字型提示虛擬機器是蘋果的專利保護的，並沒有在 TrueType 標準中提及。FreeType 2 包括一個自動提示器可以分析字形形狀，並自動生成提示，從而跳過這些受專利保護的技術。[1]（頁面存檔備份，存於網際網路檔案館） 免費／廉價字型往往沒有提示資料，或者任意生成，自動提示器基本上改進了這類字型的外觀，但它同時降低了那些原先提示好的專業字型外觀，但是對於非西文字型的效果不是很好，因此很多人還是傾向於使用專利保護的提示技術。



技術資訊

輪廓

TrueType 字型中的字元（或字形）輪廓由直線和二次貝塞爾曲線（bézier）片段構成。這些構建在數學上比平面設計界 PostScript 使用的三次貝塞爾曲線（也被 Type 1 字型所使用）更容易處理。儘管如此，對於多數形狀，二次要比三次貝塞爾曲線需要更多的點來描述。這個差異也意味著它不能將 Type 1 無失真地轉換為 TrueType 格式，可是你可以無失真地將 TrueType 轉換為 Type 1。

提示語言

TrueType 系統包含一個虛擬機在字體內部執行程式，處理字形的 "提示"（hints）。這些定義輪廓的控制點最主要目的是在字型顯示時減少模糊現象。每個字形的提示程式能算出顯示字形的像素大小，以及顯示環境中其他次要參數。

雖然和普通程式中的接受輸入和產品輸出一同，TrueType 提示語言的確具備一些程式語言的特性：條件分支（IF 聲明），控制循環一個時間的演算法（FOR- 和 WHILE - 型聲明），變數（雖然這些只是記憶體中分給字體的一個區域中的簡單編號的槽），並將代碼封裝到函式中。特別結構 delta hints 是最低級的控制，用來移動一個控制點或一個像素大小。

好的 TrueType 字形程式技術需要在一個字體中盡可能的使用一次參數定義（例如：字元頸寬、大寫字母高度、x 字高）。這意味著盡量避免 delta 結構。這可以幫助字體開發者做一些重要修改（例如：要統一將字元主高改到 1-2 像素寬的時候）。

製作一個良好提示的 TrueType 字型需要大量的工作。1990 年代以來，大量的添加字體提示的程式被開發出來給使用者使用；但是，很多 TrueType 字型只有一些很不完善的提示，或者只有根據字型編輯器自動提示，導致各種不同結果。



參考文獻



外部連結


* TrueType 規格 (微軟)（頁面存檔備份，存於網際網路檔案館）（英文）

* TrueType 規格 (蘋果)（頁面存檔備份，存於網際網路檔案館）（英文）

* TrueType 字型（頁面存檔備份，存於網際網路檔案館）（英文）



參見


* 字型

* PostScript

* OpenType

* 萬國碼，UTF-8，Unicode fonts。

* Uniscribe（Windows multilingual text rendering engine）

* Apple Type Services for Unicode Imaging（New Macintosh multilingual text rendering engine）

* WorldScript（Old Macintosh multilingual text rendering engine）