Xorg

不同類型的 XWindows 字型的用途是什麼?

  • January 30, 2014

在我的/usr/share/fonts/我有四個子目錄對字型類型進行分類:

  1. cmap
  2. truetype
  3. type1
  4. X11

該命令fc-list生成它們的列表。

這些不同的類別是出於特定目的,還是僅僅是設計字型的不同趨勢演變的結果?

它們是不同的字型數據庫,由不同的軟體以不同的格式使用,儘管有重疊。

X11包含X Window System使用的字型,特別是在伺服器上呈現的字型。這是在 X 上渲染字型的傳統方式。您將主要找到PCF格式的點陣圖字型,以及一些Type 1TrueType格式的矢量字型。

Type 1 是PostScript字型的格式。PostScript 在被 PDF 取代之前一直是印刷行業的標準。類型 1 適合列印,但以典型螢幕解析度提供的小尺寸渲染矢量字型往往會產生比精心設計的點陣圖字型更差的結果。

TrueType 是一種矢量格式,帶有額外的渲染提示,用於指定如何以小解析度選取像素。因此,TrueType 字型是可縮放的(您可以在任何尺寸下使用它們,這與點陣圖字型不同),但即使在小尺寸下也能產生良好的效果。TrueType 由 Apple 開發並用於 Microsoft Windows。

X11 的伺服器端字型渲染有一些優勢,主要是在執行大多數程序的電腦在某個機房中的大型電腦和使用者在執行 X 伺服器的X 終端之前的設置中。使用伺服器端渲染,程序發送諸如“顯示此文本”之類的命令,而不是需要更多頻寬的“顯示此圖像”。

X11 伺服器端字型的字型搜尋路徑通過xset fp.

如今,X 終端已經很少見,網路頻寬也增加了很多,所以這已經不是大家普遍關心的問題了。客戶端字型渲染變得流行主要是因為它允許抗鋸齒。抗鋸齒使用灰度級來表示部分像素,這提高了低解析度圖像的整潔度,尤其是文本。LCD顯示器使亞像素抗鋸齒成為可能,渲染器利用像素的位置來微調抗鋸齒。傳統的 X 伺服器只能將矢量字型渲染成單色點陣圖(由於 X11 的內部架構,文本渲染器不知道背景顏色,因此無法進行抗鋸齒處理)。FreeTypeXft的結合庫成為使用抗鋸齒渲染字型的事實標準。

現代 X 伺服器實現了Render 擴展,它使用alpha 通道執行圖像的伺服器端合成。這允許客戶端使用抗鋸齒渲染字型並將結果發送到伺服器進行合成和顯示。

FreeType 支持 TrueType 和 Type1 字型,以及 TrueType 的OpenType擴展。Cmap文件是附加的映射表,用於指定字元的圖像(或更準確地說是渲染指令)的儲存位置。它的字型搜尋路徑是通過Fontconfig配置的。該命令fc-list是 Fontconfig 的一部分。Fontconfig 通常使所有字型都/usr/share/fonts可用。FreeType 和 Fontconfig 可以由 X11 以外的應用程序使用,例如列印。

引用自:https://unix.stackexchange.com/questions/111454