Sunday, August 06, 2006

中文輸出字型

資料來源: 1. FreeBSD Chinese HOWTO 2. 高雄師範大學 [教學訊息交談設計]

Chapter 5. 中文輸出字型

(1).點陣字(Bitmapped Fonts):

點陣字是早期開發之中文系統字型,同時也是一般螢幕顯示常用的字型,點陣大小主要分16x15或24x24二種字級。以24x24 字級為例,其造字原理是由每邊24點的正方形點陣來構成一個文字,其中每個點以亮或不亮的方式來組合一個字的外型。

因此以24x24 字級為例,每個字所佔的空間為24x24=576 bits=72bytes,完整的一套中文字型便需要24x24x13051=7517376 bits=939672 bytes,倚天中文的 STDFONT.24字形檔就是存放這種字型。早期字體放大的作法是將原本造字的字級,將點數往垂直或水平的方向增加來達成文字放大的效果。這種方法在文字斜線部份放大時便會出現十分明顯的鋸齒狀變形,為了改進這個缺失,造字廠商便以推出更高字級字形的方法來因應,如32x32、48x48‥‥等字級來替代原本直接以低字級放大的處理方法。

這種方式雖然字體美觀的要求滿足了,但是字形所需的硬碟空間卻相對膨脹,例如48x48 字級每個字即需要48x48=2304 bit的空間,同理,一套完整的字體就要約4MB 的空間,更高字級所需的空間更是以幾何級數的倍數激增。為了改善點陣字的這些弊端,向量字應運而生。

代表字型 BDF(Bitmap Distribution Format,點陣分散格式)、HBF(Hanzi Bitmap Font,漢字點陣字體)、PCF(Portable Compiled Font)

(2).向量字

向量字是以許多的線段來組成文字的外型,因此在文字放大時只要改變每個線段的長度就可以無限制地在字體的大小上做變化,不需要多套不同字級的字體,也不會產生鋸齒狀,同時文字所佔的空間也相對減小。

唯中文字並不是全由線段構成,在以線段來表示曲線的部份尚不能達成完全的平滑要求,當文字做高倍率的放大時,一樣會在曲線部份出現折線;如果以更多的線段來表示曲線,雖然可以將曲線部份描繪地更圓滑,但字體所佔的空間也是相對地增加,所以並非治本之道。為了提高文字顯示的品質與效率,曲線字繼之而起,這也是當前WINDOWS下中文的主流。

(3). 曲線描邊字(outline font)

曲線描邊字是由幾個點來組成曲線,再由許多曲線來勾勒出文字的外型。要放大或縮小文字,只要調整這些控制點的位置即可完成,並且透過控制這些曲線點的方式,還可以做到平移、旋轉或改變文字的外型,因此曲線字不但文字美觀,空間小,同時更富有變化。

不過曲線字與向量字都需將曲線與文字的資料加以運算轉換,經組合後才能得到字型的資料,因此文字呈現的速度較為緩慢。Windows 系統下的標準字型TrueType(在 Windows中這種字型前面都印有二個重疊的T字) 字型即是一種以BSprine曲線來描邊的字型,TrueType字體免除了向量字體的一些缺點,它可以自由定義各種尺寸的字體,而且不失真,不管是螢幕或是印表機都使用同一種字體,讓使用者在螢幕上所看到的和印表機輸出的完全相同。

5.1. 字型格式

5.1.1 PostScript
於Aug. 2, 2006 中有文章介紹囉.

5.1.2 TrueType
TrueType字型格式為美國 AppleMicrosoft 所共同制定,最先使用於Apple的Macintosh系列及 Microsoft Windows 3.1, 而目前Apple的OS 8.0及 Microsoft Windows 95/NT/2000/XP也都使用 TrueType作為字型格式。

基本上TrueType和PostScript一樣,都是使用貝茲曲線(Bezier Curve) 來描述的外框字。 其字型可以作任意尺寸的放大縮小, 或作其他屬性的變化,不過由於Apple及Microsoft 的作業系統都直接支援此字型格式,所以並不需要如PostScript 一樣,外掛(Adobe)Type Manager之類的程式。

Comments: Post a Comment



<< Home