這次我們來講解如何調整各式各樣的字型設定,如何安裝新字體,和其他可以大大改善Xwindow字型的外觀和可讀性的方法。這是藉由調整XF86Config文件中的字型路徑(FontPath),在startx或xdm加上Xserver命令列選項(command line options),加入新的字型,安裝TrueType字型服務器(font server) xfs,和使用K Desktop Environment 1.1的功能來調整許多應用程序的字型設定,包含設定讓非KDE應用程序的顏色和字型能夠與KDE一致。 XF86Config文件 要想解決字型的問題,首先得看看XF86Config文件。(通常放在/etc/X11/XF86Config)。這個文件中關於字型最重要的部分就是FontPath。在我們研究它之前,最好先檢查X的其他設定。錯誤的屏幕設定比錯誤的字型設定更令人頭痛。請確定您屏幕的更新頻率(refresh rate)。 設定FontPath 用vi文字編輯器編輯XF86Config,在檔案的開頭,應該會看到類似下面的東西: FontPath "unix/:7100" FontPath "/usr/X11R6/lib/X11/fonts/TrueType" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" FontPath告訴X到那裡去找在屏幕上顯示用的字型。順序是很重要的,當一個X的應用程序向X要求使用一些字型,X server通常偏好使用正在用的字型。然後它去看看FontPath,使用最先看到能滿足X client要求的字型。 預設的FontPath通常將75dpi的字型放在100dpi的字型前面。若有一台高分辨率的屏幕,這表示非常小的字。首先就是將75dpi和100dpi的FontPath對調。 FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/Type1/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" 然後指出偏好使用不能縮放的點陣字。若曾經使用Netscape或是其他使用較大字型來顯示標題的程序,將會發現這些字型呈現鋸齒狀的。這樣很丑,需要修改。所以在misc,100dpi和75dpi的最後加上:unscaled。也可以同時使用能縮放和不能縮放的字,只要將不能縮放的字的FontPath放在前面,告訴X說若可能的話,盡量使用不能縮放的字。 FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/100dpi:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/75dpi:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/Type1" FontPath "/usr/X11R6/lib/X11/fonts/Speedo" FontPath "/usr/X11R6/lib/X11/fonts/misc" FontPath "/usr/X11R6/lib/X11/fonts/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/75dpi" 在做了這些改變後,重新啟動X。 X server命令列選項 下面一件要做的事是調整X server的命令列選項。可用-dpi來指定顯示的分辨率是每英寸幾點。現在很多的系統使用高分辨率的顯示器,可能它們會要用100dpi。 在console下啟動X,鍵入 startx -dpi 100 若用xdm這種圖形登錄界面,需要編輯/usr/X11/lib/X11/xdm/Xservers文件。在裡面有Xserver的命令列。我的文件裡有下面這一行: :0 local /usr/X11R6/bin/X -dpi 100 -gamma 1.6 TrueType 字型 在 Windows 裡加上了對 TrueType 字型的支持。Windows 95 和其他的Windows 都內含 Arial、Times New Roman和 Courier New。約等於 Helvetica、Times和 Courier。TrueType 字型是能縮放的,所以在放大時很好看,而它們也被好好地調整過,故在縮小的時候依然可讀。 xfs xfs 是一種字型服務器的選擇,XteamLinux 4.0默認的就是使用該字型服務器。xfs 是基於 FreeType Font library, 不只能處理 TrueType 和 Type 1 字型,也可以對付原本的 X 字型。 安 裝 第一步是將 TrueType 字型加入Xteamlinux 4.0 裡。su 為超級用戶,建一個目錄來存放這些字型: mkdir /usr/share/fonts/ttfonts。 然後將字型放入這個目錄裡。您可以從Windows 系統中拷貝過去 cp /mnt/win/path_to_fonts/*ttfusr/share/fonts/ttfonts/或是從 Microsoft 直接下載。 這些字型是自解壓縮的ZIP文件。也可按如下方法安裝: unzip 注意字型的名文件必須小寫。一個快速又容易的轉換方法是將它們拷貝到一個 DOS(FAT16) 檔案系統中,然後再拷貝回來。DOS 不處理大寫。另一個方法是先進入到存放字型的目錄下,然後鍵入: ls *TTF while read f do [ -f "" ] &&&& mv -f "" "`echo "" tr A-Z a-z`" done 注意標點符號——那些“backquotes”很重要。當 TrueType 字型正確安裝後,以超級用戶執行: ttmkfdir -o fonts.scale mkfontdir 當字型目錄下的內容改變後,重新執行上面的命令。接下來,編輯你的 xfs 字型設定文件/etc/X11/fs/config 在字型表中加入你的 TrueType 字型: catalogue = /usr/X11R6/lib/X11/fonts/misc:unscaled, /usr/X11R6/lib/X11/fonts/100dpi:unscaled, /usr/X11R6/lib/X11/fonts/75dpi:unscaled, /usr/X11R6/lib/X11/fonts/misc, /usr/X11R6/lib/X11/fonts/Type1, /usr/X11R6/lib/X11/fonts/Speedo, /usr/share/fonts/default/Type1, /usr/share/fonts/ttfonts, /usr/X11R6/lib/X11/fonts/100dpi, /usr/X11R6/lib/X11/fonts/75dpi 也可以用“chkfontpath --add ”命令來加入字型。當使用時,按如下方法更改字型的預設點數。 default-point-size = 140 這使我從預設的 12 點字變為 14 點字。有些 X 的應用程序使用這個,有些則不。接下來,確定XF86Config 文件中的 FontPath 是: FontPath "unix/:-1" 注意“unix/:7100”也可以做到,但是在剛出來時無法使用。將所有的 FontPath 用“#”讓它變成注解,反正你也不用它們了。xfs 的 packages 應該和其他XFree 的 packages 一起安裝了。要確定它是預設的服務,可以使用 “ntsysv” 或是 chkconfig --add xfs 現在 xfs 在您每一次開機的時候都會啟動。重新啟動 X 來讀入新的 FontPath。用下面的方式 啟動/重新啟動 xfs /etc/rc.d/init.d/xfs restart 這樣Xteamlinux 4.0就有個可以使用的字型服務器了,而且它已經啟動了,可以檢查哪些字型正在被使用: xlsfonts less