TrueType

TrueType是由美國蘋果公司和微軟公司共同開發的一種電腦輪廓字型型別標準。這種型別字型檔案的副檔名是codice_1，型別程式碼是codice_2。早在1980年代末，蘋果公司為了對抗Adobe公司的Type 1PostScript字型，設計開發了TrueType。之後微軟加入了開發，Windows作業系統的字型格式基本上都統一成TrueType，而在蘋果的Mac OS卻成了PostScript和TrueType對立的局面。TrueType後來也被Linux等系統使用，成為標準字型。TrueType的主要強項在於它能給開發者提供關於字型顯示、不同字型大小的畫素級顯示等的高階控制。在後來開發的OpenType型別字型中，可以選擇PostScript或TrueType作為記述方式。歷史.蘋果.在麥金塔中，字型原先是儲存為手工調整的點陣字型檔案，為每個字型、特殊大小分別指定一個個的畫素位置。如果使用者要看另一個大小的字型，字型管理器找到最接近匹配，應用基本比例演算法來顯示。當比例放大到大字號的時候，效果就非常糟糕——因為字型是點陣式的，字形就被放大成馬賽克式的鋸齒。與之相對的，印表機的字型，如著名的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智慧字型技術的一部分。這是在兩個主要領域的重要拓展：首先在字型軸線中。然而蘋果以外的字型開發者卻很少建立AAT字型，而都轉向支援OpenType。微軟.1991年微軟把TrueType加入Windows 3.1作業系統。在與Monotype公司合作下，微軟花了大力氣製作了一批高品質TrueType字型，並使其可以與當時PostScript裝置捆綁的核心字型相容。其中包括了目前Windows系統的一些著名字型：Times New Roman體。請注意，所謂“相容”意味著兩層含義：第一，相相容字型外觀非常相似；第二，也是很重要的，字型含有同樣的字元寬度，以便可以用來替代相同文件的內容而不需要重新排版調整。對於字型名稱的變化，除了Arial和Helvetica體；導致有人認為產生一個問題：每當一個特定的Windows字型命名之後，必須決定一個與其相當的蘋果或PostScript字型，反之亦然。儘管如此，雖然字型中字元輪廓資料本身不一樣，風格和字型被做的很相似，導致一般使用者很難區別開來。微軟和Monotype的技術人員使用TrueType的“提示技術”，使用液晶顯示器畫素結構，以提高實際能顯示的解析度。微軟大力推廣這些技術，並擴充套件到各種平臺。微軟還開發了一個叫“智慧字型”的技術，在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提示技術的重要性。蘋果Mac OS X的補償技術幾乎忽略了所有TrueType字型中的所有提示資料，而微軟的ClearType也忽略了很多提示資料，並與「略加提示」的字型配合使用最佳。Linux及其他平臺.文泉驛計劃提供了很好的TrueType中文字元支援，而且開源提供，被很多Linux版本支援。David Turner的FreeType專案期望建立一個獨立執行的TrueType標準。FreeType包含很多Linux提供者。在FreeType中有一些專利問題因為一部分TrueType字型提示虛擬機器是蘋果的專利保護的，並沒有在TrueType標準中提及。FreeType 2包括一個自動提示器可以分析字形形狀，並自動生成提示，從而跳過這些受專利保護的技術。 免費／廉價字型往往沒有提示資料，或者任意生成，自動提示器基本上改進了這類字型的外觀，但它同時降低了那些原先提示好的專業字型外觀，但是對於非西文字型的效果不是很好，因此很多人還是傾向於使用專利保護的提示技術。技術資訊.輪廓.TrueType字型中的字元更容易處理。儘管如此，對於多數形狀，二次要比三次貝塞爾曲線需要更多的點來描述。這個差異也意味著它不能將Type 1無損地轉換為TrueType格式，可是你可以無損地將TrueType轉換為Type 1。提示語言.TrueType系統包含一個虛擬機器在字型內部執行程式，處理字形的"提示"。這些定義輪廓的控制點最主要目的是在字型顯示時減少模糊現象。每個字形的提示程式能算出顯示字形的畫素大小，以及顯示環境中其他次要引數。雖然和普通程式中的接受輸入和產品輸出一同，TrueType提示語言的確具備一些程式語言的特性：條件分支，並將程式碼封裝到函式中。特別結構delta hints是最低階的控制，用來移動一個控制點或一個畫素大小。好的TrueType字形程式技術需要在一個字型中盡可能的使用一次引數定義。製作一個良好提示的TrueType字型需要大量的工作。1990年代以來，大量的新增字型提示的程式被開發出來給使用者使用；但是，很多TrueType字型只有一些很不完善的提示，或者只有根據字型編輯器自動提示，導致各種不同結果。