天天看點

gentoo中文字型美化 讓Gentoo的中英文字型顯示更漂亮收藏

安裝必要的元件和字型

#emerge cairo fontconfig libXft freetype

#emerge arphicfonts wqy-bitmapfont cjkuni-fonts corefonts ttf-bitstream-vera

然後使用 種草得草 提供的 local.conf (設定 local.conf 要比更改 fonts.conf 來得安全)可以完美的顯示 簡繁英

感謝 Linuxsir.Org 網友 種草得草 提供此檔案

File: /etc/fonts/local.conf

<?xml version="1.0"?>
<fontconfig>
        <alias>
                <family>serif</family>
                <prefer>
                        <family>Bitstream Vera Serif</family>
   <family>Microsoft Yahei</family>
                        <family>DejaVu Serif</family>
                        <family>AR PL ShanHeiSun Uni</family>
                        <family>WenQuanYi Bitmap Song</family>
                        <family>AR PL ZenKai Uni</family>
                </prefer>
        </alias>
        <alias>
                <family>sans-serif</family>
                <prefer>
                        <family>Bitstream Vera Sans</family>
   <family>Microsoft Yahei</family>
                        <family>DejaVu Sans</family>
                        <family>AR PL ShanHeiSun Uni</family>
                        <family>WenQuanYi Bitmap Song</family>
                        <family>AR PL ZenKai Uni</family>
                </prefer>
        </alias>
        <alias>
                <family>monospace</family>
                <prefer>
                        <family>Bitstream Vera Sans Mono</family>
   <family>Microsoft Yahei</family>
                        <family>DejaVu Sans Mono</family>
                        <family>AR PL ShanHeiSun Uni</family>
                        <family>WenQuanYi Bitmap Song</family>
                        <family>AR PL ZenKai Uni</family>
                </prefer>
        </alias>
 <match target="font" >
         <edit name="rgba" mode="assign">
   <const>none</const>
  </edit>
  <edit mode="assign" name="antialias" >
   <bool>true</bool>
  </edit>
  <edit mode="assign" name="autohint" >
   <bool>false</bool>
  </edit>
  <edit name="hinting">
   <bool>true</bool>
  </edit>
  <edit name="hintstyle" mode="assign" >
   <const>hintmedium</const>
  </edit>
 </match>
 <match target="font" >
                <test name="family" compare="contains" >
                        <string>Song</string>
                        <string>Sun</string>
                        <string>Kai</string>
                        <string>Ming</string>
                </test>
  <test name="weight" compare="less_eq">
   <int>100</int>
  </test>
                <test compare="more_eq" target="pattern" name="weight" >
                        <int>180</int>
                </test>
                <edit mode="assign" name="embolden" >
                        <bool>true</bool>
                </edit>
        </match>
        <match target="font" >
                <test name="family" compare="contains" >
                        <string>Song</string>
                        <string>Sun</string>
                        <string>Kai</string>
                        <string>Ming</string>
                </test>
                <edit name="globaladvance">
                        <bool>false</bool>
                </edit>
                <edit name="spacing">
                        <int>0</int>
                </edit>
                <edit name="hinting">
                        <bool>true</bool>
                </edit>
                <edit name="autohint">
                        <bool>false</bool>
                </edit>
                <edit name="antialias" mode="assign">
                        <bool>true</bool>
                </edit>
                <test name="pixelsize" compare="less_eq">
                        <int>18</int>
                </test>
                <edit name="antialias" mode="assign" >
                        <bool>false</bool>
                </edit>
        </match>
 <match target="font" >
  <test name="family" compare="contains" >
   <string>Microsoft Yahei</string>
  </test>
  <edit name="globaladvance">
   <bool>false</bool>
  </edit>
  <edit name="spacing">
   <int>0</int>
  </edit>
 </match>
</fontconfig>      

==========================================================================

==========================================================================

==========================================================================

==========================================================================

gentoo HOWTO 增加字型 2008-08-22 15:00

手工添加

如果您需要手工添加Portage裡尚未提供或不能提供的字型,您按照下面的步驟手工添加。此處以simsun.ttc為例。

拷貝字型

拷貝字型檔案到/usr/share/fonts下的一個檔案夾裡,比如/usr/share/fonts/TTF。然後修改檔案權限
代碼: 修改權限
# chmod 644 /usr/share/fonts/TTF/simsun.ttc      

修改/etc/X11/xorg.conf

保證/etc/X11/xorg.conf的Section "Files"裡有相應的路徑,比如:
檔案: /etc/X11/xorg.conf
Section "Files"
        ...
        FontPath     "/usr/share/fonts/TTF"
        ...
EndSection      

産生fonts.dir和fonts.scale

這一步的作用是為了使使用X核心字型API的程式可以利用本字型。這類程式的例子有xterm,emacs,xmms等。

安裝x11-apps/mkfontdir和x11-apps/mkfontscale并産生fonts.dir和fonts.scale

代碼: 安裝mkfontdir和mkfontscale
$ emerge mkfontdir mkfontscale
$ cd /usr/share/fonts/TTF
$ sudo mkfontdir
$ sudo mkfontscale      

更新fontconfig的cache

這一步的作用是為了使使用fontconfig來配置字型的程式可以利用本字型。qt程式和gtk+2程式皆屬此類。
代碼: fc-cache -fv
$ sudo fc-cache -fv

驗證安裝成功

提示! 做完上面這些步驟之後您可能需要重新開機一下你的X,然後繼續下面的操作

使用X核心字型API的程式

安裝x11-apps/xlsfonts,執行xlsfonts看是否可以列出剛才安裝的字型名。X核心字型的名字很長,比如:
代碼: X核心字型名
-misc-simsun-medium-r-normal--0-0-0-0-c-0-ascii-0
-misc-simsun-medium-r-normal--0-0-0-0-c-0-gb18030.2000-0
-misc-simsun-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
-misc-simsun-medium-r-normal--0-0-0-0-c-0-gbk-0
-misc-simsun-medium-r-normal--0-0-0-0-c-0-ibm-cp850
-misc-simsun-medium-r-normal--0-0-0-0-c-0-iso10646-1
-misc-simsun-medium-r-normal--0-0-0-0-c-0-iso8859-1
-misc-simsun-medium-r-normal--0-0-0-0-c-0-iso8859-15
-misc-simsun-medium-r-normal--0-0-0-0-c-0-koi8-r      
如果有,那麼xmms這樣的程式就可以使用。
提示! xlsfonts指令需要在X下的Terminal執行,不然你需要加參數-display displayname指定displayname

使用fontconfig的程式

執行fc-list看是否可以列出剛才安裝的字型名。

==========================================================================

==========================================================================

==========================================================================

==========================================================================

gentoo中文字型美化 讓Gentoo的中英文字型顯示更漂亮收藏
 讓Gentoo的中英文字型顯示更漂亮收藏

新一篇: 快速安裝gentoo | 舊一篇: 在Emacs下用C/C++程式設計

<script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script>

讓Gentoo的中英文字型顯示更漂亮

Gentoo

首先我們必須将Widnows下的simsun.ttc和tahoma.ttf tahomab.ttf拷貝到Gentoo的字型目錄下面,然後

# mkfontscale
# mkfontdir
# fc-cache -f -v
      

接着我們對Fontconfig配置檔案/etc/fonts/fonts.conf進行修改,将simsum在Sans和Serif的順序提前,例如

<!--
  Serif faces
 -->
<alias>
<family>Bitstream Vera Serif</family>
<family>Times</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>SimSun</family>
<family>Luxi Serif</family>
<family>Kochi Mincho</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>Baekmuk Batang</family>
<default><family>serif</family></default>
</alias>

<!--
  Sans-serif faces
 -->
<alias>
<family>Bitstream Vera Sans</family>
<family>Helvetica</family>
<family>Arial</family>
<family>Verdana</family>
<family>Nimbus Sans L</family>
<family>SimSun</family>
<family>Luxi Sans</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>AR PL KaitiM Big5</family>
<family>Baekmuk Dotum</family>
<default><family>sans-serif</family></default>
</alias>

(中間部分略)

<alias>
<family>serif</family>
<prefer>
<family>Bitstream Vera Serif</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>SimSun</family>
<family>Luxi Serif</family>
<family>Times</family>
<family>Kochi Mincho</family>
<family>AR PL SungtiL GB</family>
<family>AR PL Mingti2L Big5</family>
<family>Baekmuk Batang</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Bitstream Vera Sans</family>
<family>Verdana</family>
<family>Nimbus Sans L</family>
<family>SimSun</family>
<family>Luxi Sans</family>
<family>Arial</family>
<family>Helvetica</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>AR PL KaitiM Big5</family>
<family>Baekmuk Dotum</family>
</prefer>
</alias>
      

啟動X,在“桌面”-->"首選項"-->“字型”裡面将“應用程式字型”、“桌面字型”、“視窗标題字型”全部選為Tahoma,是以更改了中文字型的順序,在遇到英文字型無法識别的字型時将自動優先選擇Simsun做為中文字型。

這時由于沒有關閉simsun的antialias,中文字型的顯示還是有點難看,可以在/etc/fonts/fonts.conf中加入以下代碼關閉simsun字型的AA效果:

<!-- 關閉SimSun的AA -->
<match target="font">
<test qual="any" name="family">
<string>SimSun</string>
</test>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>
      

繼續閱讀