歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> 連載:Linux系統的字型設定方法

連載:Linux系統的字型設定方法

日期:2017/3/6 15:50:29   编辑:關於Unix
這次我們來講解如何調整各式各樣的字型設定,如何安裝新字體,和其他可以大大改善Xwindow字型的外觀和可讀性的方法。這是藉由調整XF86Config文件中的字型路徑(FontPath),在startx或xdm加上Xserver命令列選項(command line options),加入新的字型,安裝True
  這次我們來講解如何調整各式各樣的字型設定,如何安裝新字體,和其他可以大大改善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

Copyright © Linux教程網 All Rights Reserved