打印

分享 Ubuntu 英文環境中文美化的 fonts.conf

分享 Ubuntu 英文環境中文美化的 fonts.conf

<!-- 註︰此為小弟家用的 LINUX Ubuntu Dapper 下的 /etc/fonts/fonts.conf,原創並整合自繁體的 LINUXORG WIKI 節錄 -->

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/fonts.conf file to configure system font access -->
<fontconfig>

<!--
        DO NOT EDIT THIS FILE.
        IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.
        LOCAL CHANGES BELONG IN 'local.conf'.

        The intent of this standard configuration file is to be adequate for
        most environments.  If you have a reasonably normal environment and
        have found problems with this configuration, they are probably
        things that others will also want fixed.  Please submit any
        problems to the fontconfig bugzilla system located at fontconfig.org

        Note that the normal 'make install' procedure for fontconfig is to
        replace any existing fonts.conf file with the new version.  Place
        any local customizations in local.conf which this file references.

        Keith Packard
-->

<!-- Font directory list configured on Sun Nov 28 00:06:00 CST 2004 -->

        <dir>/usr/share/fonts</dir>
        <dir>/usr/X11R6/lib/X11/fonts</dir>
        <dir>~/.fonts</dir>

<!--
  Accept deprecated 'mono' alias, replacing it with 'monospace'
-->
        <match target="pattern">
                <test qual="any" name="family">
                        <string>mono</string>
                </test>
                <edit name="family" mode="assign">
                        <string>monospace</string>
                </edit>
        </match>

<!--
  Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
-->
        <match target="pattern">
                <test qual="any" name="family">
                        <string>sans serif</string>
                </test>
                <edit name="family" mode="assign">
                        <string>sans-serif</string>
                </edit>
        </match>

<!--
  Accept deprecated 'sans' alias, replacing it with 'sans-serif'
-->
        <match target="pattern">
                <test qual="any" name="family">
                        <string>sans</string>
                </test>
                <edit name="family" mode="assign">
                        <string>sans-serif</string>
                </edit>
        </match>

<!--
  Mark common families with their generics so we'll get
  something reasonable
-->

<!--
  Serif faces
-->
        <alias>
                <family>Bitstream Vera Serif</family>
                <family>Times New Roman</family>
                <family>Times</family>
                <family>AR PL New Sung</family>
                <family>AR PL ShanHeiSun Uni</family>
                <family>AR PL Mingti2L Big5</family>
                <family>AR PL SingtiL GB</family>
                <family>Kochi Mincho</family>
                <family>Baekmuk Batang</family>                       
                <default><family>serif</family></default>
        </alias>
<!--
  Sans-serif faces
-->
        <alias>
                <family>Bitstream Vera Sans</family>
                <family>Arial</family>
                <family>Helvetica</family>
                <family>Verdana</family>
                <family>AR PL New Sung</family>
                <family>AR PL ShanHeiSun Uni</family>
                <family>AR PL KaitiM Big5</family>
                <family>AR PL KaitiM GB</family>
                <family>Kochi Gothic</family>
                <family>Baekmuk Dotum</family>
                <family>SimSun</family>
                <default><family>sans-serif</family></default>
        </alias>
<!--
  Monospace faces
-->
        <alias>
                <family>Bitstream Vera Sans Mono</family>
                <family>Courier New</family>
                <family>Courier</family>
                <family>NSimSun</family>
                <default><family>monospace</family></default>
        </alias>
<!--
  If the font still has no generic name, add sans-serif
-->
        <match target="pattern">
                <test qual="all" name="family" compare="not_eq">
                        <string>sans-serif</string>
                </test>
                <test qual="all" name="family" compare="not_eq">
                        <string>serif</string>
                </test>
                <test qual="all" name="family" compare="not_eq">
                        <string>monospace</string>
                </test>
                <edit name="family" mode="append_last">
                        <string>sans-serif</string>
                </edit>
        </match>
       
<!--
  Some Asian fonts misadvertise themselves as monospaced when
  in fact they are dual-spaced (half and full).  This makes
  FreeType very confused as it forces all widths to match.
  Undo this magic by disabling the width forcing code -->
        <match target="font">
                <test name="family"><string>GulimChe</string></test>
                <edit name="globaladvance"><bool>false</bool></edit>
        </match>
       
        <match target="font">
                <test name="family"><string>DotumChe</string></test>
                <edit name="globaladvance"><bool>false</bool></edit>
        </match>

        <match target="font">
                <test name="family"><string>BatangChe</string></test>
                <edit name="globaladvance"><bool>false</bool></edit>
        </match>

        <match target="font">
                <test name="family"><string>GungsuhChe</string></test>
                <edit name="globaladvance"><bool>false</bool></edit>
        </match>

<!--
        The Bitstream Vera fonts have GASP entries suggesting that hinting be
        disabled below 8 ppem, but FreeType ignores those, preferring to use
        the data found in the instructed hints.  The initial Vera release
        didn't include the right instructions in the 'prep' table. Fix this
        by disabling hinting manually at smaller sizes (< 8ppem)
-->
       
        <match target="font">
                <test name="family">
                        <string>Bitstream Vera Sans</string>
                </test>
                <test name="pixelsize" compare="less">
                        <double>7.5</double>
                </test>
                <edit name="hinting">
                        <bool>false</bool>
                </edit>
        </match>
       
        <match target="font">
                <test name="family">
                        <string>Bitstream Vera Serif</string>
                </test>
                <test name="pixelsize" compare="less">
                        <double>7.5</double>
                </test>
                <edit name="hinting">
                        <bool>false</bool>
                </edit>
        </match>
       
        <match target="font">
                <test name="family">
                        <string>Bitstream Vera Sans Mono</string>
                </test>
                <test name="pixelsize" compare="less">
                        <double>7.5</double>
                </test>
                <edit name="hinting">
                        <bool>false</bool>
                </edit>
        </match>
       
<!--
  Load per-user customization file
-->
        <include ignore_missing="yes">~/.fonts.conf</include>

<!--
  Load local system customization file
-->
        <include ignore_missing="yes">local.conf</include>

<!--
  Alias well known font names to available TrueType fonts
-->
        <alias>
                <family>Times</family>
                <accept><family>Times New Roman</family></accept>
        </alias>
        <alias>
                <family>Helvetica</family>
                <accept><family>Verdana</family></accept>
        </alias>
        <alias>
                <family>Arial</family>
                <accept><family>Verdana</family></accept>
        </alias>
        <alias>
                <family>Courier</family>
                <accept><family>Courier New</family></accept>
        </alias>

<!--
Check user preference to avoid bitmap fonts and replace
bitmap face names with equivalent scalable fonts
-->

        <match target="pattern">
                <test name="prefer_outline">
                        <bool>true</bool>
                </test>
                <test name="family">
                        <string>Helvetica</string>
                </test>
                <edit name="family" mode="prepend" binding="same">
                        <string>Arial</string>
                </edit>
        </match>

        <match target="pattern">
                <test name="prefer_outline">
                        <bool>true</bool>
                </test>
                <test name="family">
                        <string>Times</string>
                </test>
                <edit name="family" mode="prepend" binding="same">
                        <string>Times New Roman</string>
                </edit>
        </match>
<!--
  Provide required aliases for standard names
-->
        <alias>
                <family>serif</family>
                <prefer>
                        <family>Bitstream Vera Serif</family>
                        <family>Times</family>
                        <family>Times New Roman</family>
                        <family>AR PL New Sung</family>
                        <family>AR PL ShanHeiSun Uni</family>
                        <family>Kochi Mincho</family>
                        <family>Baekmuk Batang</family>                       
                </prefer>
        </alias>
        <alias>
                <family>sans-serif</family>
                <prefer>
                        <family>Bitstream Vera Sans</family>
                        <family>Verdana</family>
                        <family>Arial</family>
                        <family>Helvetica</family>
                        <family>AR PL New Sung</family>
                        <family>AR PL ShanHeiSun Uni</family>
                        <family>Kochi Gothic</family>
                        <family>Baekmuk Dotum</family>
                        <family>SimSun</family>
                </prefer>
        </alias>
        <alias>
                <family>monospace</family>
                <prefer>
                        <family>Bitstream Vera Sans Mono</family>
                        <family>Courier New</family>
                        <family>AR PL New Sung</family>
                        <family>AR PL ShanHeiSun Uni</family>
                        <family>Kochi Gothic</family>
                        <family>Baekmuk Dotum</family>
                        <family>NSimSun</family>
                </prefer>
        </alias>

<!--
Disable font antialias for Chinese <= 16px
-->
       
        <match target="font">
                <test qual="any" name="family" compare="eq">
                        <string>AR PL New Sung</string>
                        <family>AR PL ShanHeiSun Uni</family>
                        <string>Kochi Mincho</string>
                        <string>Baekmuk Dotum</string>
                </test>
                <test name="pixelsize" compare="less_eq">
                        <double>16</double>
                </test>
                <edit name="antialias">
                        <bool>false</bool>
                </edit>
                <edit name="hinting">
                        <bool>true</bool>
                </edit>
        </match>

<!--
Disable font antialias for English <= 6px
-->

        <match target="font">
                <test qual="any" name="family" compare="eq">
                        <string>Times</string>
                        <string>Times New Roman</string>
                        <string>Verdana</string>
                        <string>Arial</string>
                        <string>Helvetica</string>
                </test>
                <test name="pixelsize" compare="less_eq">
                        <double>6</double>
                </test>
                <edit name="antialias">
                        <bool>false</bool>
                </edit>
                <edit name="hinting">
                        <bool>true</bool>
                </edit>
        </match>

<!--
Artificial oblique for fonts without an italic or oblique version
-->

        <match target="font">
                <!-- check to see if the font is roman -->
                <test name="slant">
                        <const>roman</const>
                </test>
                <!-- check to see if the pattern requested non-roman -->
                <test target="pattern" name="slant" compare="not_eq">
                        <const>roman</const>
                </test>
                <!-- multiply the matrix to slant the font -->
                <edit name="matrix" mode="assign">
                        <times>
                                <name>matrix</name>
                                <matrix><double>1</double><double>0.2</double>
                                        <double>0</double><double>1</double>
                                </matrix>
                        </times>
                </edit>
                <!-- pretend the font is oblique now -->
                <edit name="slant" mode="assign">
                        <const>oblique</const>
                </edit>
        </match>

        <config>
<!--
  These are the default Unicode chars that are expected to be blank
  in fonts.  All other blank chars are assumed to be broken and
  won't appear in the resulting charsets
-->
                <blank>
                        <int>0x0020</int>        <!-- SPACE -->
                        <int>0x00a0</int>        <!-- NO-BREAK SPACE -->
                        <int>0x00ad</int>        <!-- SOFT HYPHEN -->
                        <int>0x115f</int>        <!-- HANGUL CHOSEONG FILLER -->
                        <int>0x1160</int>        <!-- HANGUL JUNGSEONG FILLER -->
                        <int>0x1680</int>        <!-- OGHAM SPACE MARK -->
                        <int>0x2000</int>        <!-- EN QUAD -->
                        <int>0x2001</int>        <!-- EM QUAD -->
                        <int>0x2002</int>        <!-- EN SPACE -->
                        <int>0x2003</int>        <!-- EM SPACE -->
                        <int>0x2004</int>        <!-- THREE-PER-EM SPACE -->
                        <int>0x2005</int>        <!-- FOUR-PER-EM SPACE -->
                        <int>0x2006</int>        <!-- SIX-PER-EM SPACE -->
                        <int>0x2007</int>        <!-- FIGURE SPACE -->
                        <int>0x2008</int>        <!-- PUNCTUATION SPACE -->
                        <int>0x2009</int>        <!-- THIN SPACE -->
                        <int>0x200a</int>        <!-- HAIR SPACE -->
                        <int>0x200b</int>        <!-- ZERO WIDTH SPACE -->
                        <int>0x200c</int>        <!-- ZERO WIDTH NON-JOINER -->
                        <int>0x200d</int>        <!-- ZERO WIDTH JOINER -->
                        <int>0x200e</int>        <!-- LEFT-TO-RIGHT MARK -->
                        <int>0x200f</int>        <!-- RIGHT-TO-LEFT MARK -->
                        <int>0x2028</int>        <!-- LINE SEPARATOR -->
                        <int>0x2029</int>        <!-- PARAGRAPH SEPARATOR -->
                        <int>0x202a</int>        <!-- LEFT-TO-RIGHT EMBEDDING -->
                        <int>0x202b</int>        <!-- RIGHT-TO-LEFT EMBEDDING -->
                        <int>0x202c</int>        <!-- POP DIRECTIONAL FORMATTING -->
                        <int>0x202d</int>        <!-- LEFT-TO-RIGHT OVERRIDE -->
                        <int>0x202e</int>        <!-- RIGHT-TO-LEFT OVERRIDE -->
                        <int>0x202f</int>        <!-- NARROW NO-BREAK SPACE -->
                        <int>0x205f</int>        <!-- MEDIUM MATHEMATICAL SPACE -->
                        <int>0x2060</int>        <!-- WORD JOINER -->
                        <int>0x2061</int>        <!-- FUNCTION APPLICATION -->
                        <int>0x2062</int>        <!-- INVISIBLE TIMES -->
                        <int>0x2063</int>        <!-- INVISIBLE SEPARATOR -->
                        <int>0x206A</int>        <!-- INHIBIT SYMMETRIC SWAPPING -->
                        <int>0x206B</int>        <!-- ACTIVATE SYMMETRIC SWAPPING -->
                        <int>0x206C</int>        <!-- INHIBIT ARABIC FORM SHAPING -->
                        <int>0x206D</int>        <!-- ACTIVATE ARABIC FORM SHAPING -->
                        <int>0x206E</int>        <!-- NATIONAL DIGIT SHAPES -->
                        <int>0x206F</int>        <!-- NOMINAL DIGIT SHAPES -->
                        <int>0x3000</int>        <!-- IDEOGRAPHIC SPACE -->
                        <int>0x3164</int>        <!-- HANGUL FILLER -->
                        <int>0xfeff</int>        <!-- ZERO WIDTH NO-BREAK SPACE -->
                        <int>0xffa0</int>        <!-- HALFWIDTH HANGUL FILLER -->
                        <int>0xfff9</int>        <!-- INTERLINEAR ANNOTATION ANCHOR -->
                        <int>0xfffa</int>        <!-- INTERLINEAR ANNOTATION SEPARATOR -->
                        <int>0xfffb</int>        <!-- INTERLINEAR ANNOTATION TERMINATOR -->
                </blank>
<!--
  Rescan configuration every 30 seconds when FcFontSetList is called
-->
                <rescan>
                        <int>30</int>
                </rescan>
        </config>

</fontconfig>

~~
~~

<!-- 另外小弟的 /etc/environment 亦加了以下這段 -->

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games"
LANG="en_HK.UTF-8"
LANGUAGE="en_HK:en"
LC_ALL="en_HK.UTF-8"

~~
~~

TOP

引用:
en_HK.UTF-8
有这种locale吗?

TOP

HK=HongKong 香港
请愿虽然是无论哪一国度里常有的事,不至于死的事,但我们已经知道中国是例外…… 鲁迅 一九二九

TOP

还真有啊
我还以为en_HK就像zh_US一样不可思议呢。唉,曾经的英属就是不一样啊

TOP

[quote:dc108d6d03="cnhnln"]还真有啊
我还以为en_HK就像zh_US一样不可思议呢。唉,曾经的英属就是不一样啊[/quote]us应该是老美吧,连原来的主子都背叛了
享受生活,享受ubuntu http://my.opera.com/dogfox/blog/

TOP