笨人笨办法的,federa core5中文美化
时间:2006-03-23 来源:showrun
FC5的中文字体依然无法让人忍受。在安装完毕后,使用以前的经验对FC5进行一次中文的美化。方法如下:
首先,做一次恶,从windows的fonts目录下拷贝truetype格式的Arial*,simsun.ttc到linux下的/usr/local/share/fonts/windows目录下,然后以root执行下面的命令
cd /usr/local/share/fonts/windows
ttmkfdir
cp fonts.scale fonts.dir
chkfontpath --add /usr/local/share/fonts/windows
再分别新建/etc/fonts/local.conf文件,并填写如下内容:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/local.conf file for local customizations -->
<fontconfig>
<!--
Enable sub-pixel rendering
<match target="font">
<test qual="all" name="rgba">
<const>unknown</const>
</test>
<edit name="rgba" mode="assign"><const>rgb</const></edit>
</match>
-->
<!-- from versace -->
<match target="pattern">
<test qual="any" name="family">
<string>fixed</string>
</test>
<edit name="family" mode="assign">
<string>monospace</string>
</edit>
</match>
<match target="pattern">
<test qual="any" name="family">
<string>console</string>
</test>
<edit name="family" mode="assign">
<string>monospace</string>
</edit>
</match>
<!--match target="pattern">
<test qual="any" name="family">
<string>monospace</string>
</test>
<edit name="spacing" mode="assign">
<int>100</int>
</edit>
</match-->
<!-- Provide required aliases for standard names -->
<alias>
<family>serif</family>
<prefer>
<family>Nimbus Roman No9 L</family>
<family>DongWen--Song</family>
<family>Evermore Song</family>
<family>SimSun</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Helvetica</family>
<family>Arial</family>
<family>Verdana</family>
<family>Tahoma</family>
<family>Bitstream Vera Sans</family>
<family>Nimbus Sans L</family>
<family>Luxi Sans</family>
<family>DongWen--Song</family>
<family>Evermore Song</family>
<family>SimSun</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Courier 10 Pitch</family>
<family>Bitstream Vera Sans Mono</family>
<family>Courier</family>
<family>Courier New</family>
<family>Andale Mono</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</family>
<family>DongWen--Song</family>
<family>Evermore Song</family>
<family>SimSun</family>
</prefer>
</alias>
<!-- Add by Firefly([email protected])
Most of Asian fonts can't explain by freetype2,
so,if these fonts have dual width(half/full) and monospacing,
you need to disable globaladvance.
当字体宽度大于等于mono时,关掉“全宽”。
这样英文就不会使用中文的宽度了 -->
<match target="font">
<test target="pattern" name="lang" compare="contains">
<string>zh-cn</string>
<string>zh-tw</string>
<string>ja</string>
<string>ko</string>
</test>
<test name="spacing" compare="more_eq">
<!--const>dual</const-->
<const>mono</const>
</test>
<edit name="globaladvance" mode="assign">
<bool>false</bool>
</edit>
<!--edit mode="assign" name="size" >
<plus><double>1</double></plus>
</edit-->
</match>
<!-- Add by [email protected]
Artificial bold for fonts without a bold version. -->
<match target="font">
<!-- check to see if the pattern requested > "medium" -->
<test target="pattern" name="weight" compare="more">
<const>medium</const>
</test>
<!-- pretend the font is bold now -->
<edit name="weight" mode="assign">
<const>bold</const>
</edit>
</match>
<!-- Add by Firefly([email protected])
如果字体里有迁入的点阵字就使用它 -->
<match target="font">
<edit name="embeddedbitmap" mode="assign">
<bool>true</bool>
</edit>
</match>
<!-- 所有字体默认使用 hinting 但关闭 autohint, 启动 AA -->
<match target="font">
<edit mode="assign" name="hintstyle" >
<const>hintslight</const>
</edit>
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
<edit name="antialias" mode="assign">
<bool>true</bool>
</edit>
</match>
<!-- from kanker but why disable AA first? -->
<!--match target="font" >
<test compare="more" name="size" qual="any" >
<double>8</double>
</test>
<test compare="less" name="size" qual="any" >
<double>15</double>
</test>
<edit mode="assign" name="antialias" >
<bool>false</bool>
</edit>
</match-->
<!--match target="font" >
<test compare="more" name="pixelsize" qual="any" >
<double>8</double>
</test>
<test compare="less" name="pixelsize" qual="any" >
<double>15</double>
</test>
<edit mode="assign" name="antialias" >
<bool>false</bool>
</edit>
</match-->
<!-- 如果 CJK 字体使用了 AA 就将 autohint 打开 -->
<match target="font">
<test name="antialias" compare="eq">
<const>true</const>
</test>
<test target="pattern" name="lang" compare="contains">
<string>zh-cn</string>
<string>zh-tw</string>
<string>ja</string>
<string>ko</string>
</test>
<edit name="autohint" mode="assign">
<const>true</const>
</edit>
</match>
<!-- Add by [email protected] -->
<match target="pattern">
<test name="lang" compare="contains">
<string>zh-cn</string>
<string>zh-tw</string>
<string>zh-hk</string>
<string>zh-mo</string>
<string>zh-sg</string>
<string>ja</string>
<string>ko</string>
</test>
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
<edit name="usegamma" mode="assign">
<if>
<less>
<name>pixelsize</name>
<double>20</double>
</less>
</if>
<bool>true</bool>
<bool>false</bool>
</edit>
</match>
<!-- Add by Firefly ([email protected])
Output non English/Latin family name. -->
<config>
<family>
<!--const>auto</const-->
<!--const>englishonly</const-->
<const>any</const>
</family>
</config>
<!-- Add by Firefly ([email protected])
Output non English/Latin family name.
NOT SUPPORTED in fedora/redhat -->
<!--other_family>
<bool>true</bool>
</other_family-->
</fontconfig>
在$home目录下,如果你是root就在/root/下,新建.fonts.conf文件,填写如下:
<?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 Wed Apr 23 20:50:03 CST 2003 -->
<!-- <dir>/usr/local/zhfonts/simsun</dir>-->
<dir>/usr/share/fonts</dir>
<dir>/usr/X11R6/lib/X11/fonts</dir>
<dir>/download/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>Simsun</family>
<family>Bitstream Vera Serif</family>
<family>Times</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>Luxi Serif</family>
<family>Kochi Mincho</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>DongWen SongTi</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>Simsun</family>
<family>Bitstream Vera Sans</family>
<family>Helvetica</family>
<family>Arial</family>
<family>Verdana</family>
<family>Nimbus Sans L</family>
<family>Luxi Sans</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>DongWen SongTi</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>
<!--
Monospace faces
-->
<alias>
<family>NSimsun</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>DongWen SongTi</family>
<family>Bitstream Vera Sans Mono</family>
<family>Courier</family>
<family>Courier New</family>
<family>Andale Mono</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</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>
<!--
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>
<!-- ysy -->
<match target="font">
<test name="pixelsize" compare="less_eq">
<double>16</double>
</test>
<test name="pixelsize" compare="more_eq">
<double>8</double>
</test>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>
<match target="font">
<test name="size" compare="less_eq">
<double>16</double>
</test>
<test name="size" compare="more_eq">
<double>8</double>
</test>
<edit name="antialias" mode="assign">
<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>Simsun</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>DongWen SongTi</family>
<family>Bitstream Vera Serif</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</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>Simsun</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>Bitstream Vera Sans</family>
<family>Verdana</family>
<family>Nimbus Sans L</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>
<alias>
<family>monospace</family>
<prefer>
<family>NSimsun</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>Bitstream Vera Sans Mono</family>
<family>Andale Mono</family>
<family>Courier New</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>Baekmuk Dotum</family>
</prefer>
</alias>
<!--
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.3</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>
<!--
Add by [email protected]
Artificial bold for fonts without a bold version.
-->
<match target="font">
<!-- check to see if the pattern requested > "medium" -->
<test target="pattern" name="weight" compare="not_eq">
<const>medium</const>
</test>
<!-- pretend the font is bold now -->
<edit name="weight" mode="assign">
<const>bold</const>
</edit>
</match>
<!--
Add by [email protected]
Disable "Global Advance" for all mono spacing fonts.
-->
<match target="font">
<test name="spacing">
<const>mono</const>
</test>
<edit name="globaladvance">
<bool>false</bool>
</edit>
</match>
<!--
Add by [email protected]
Enable "hinting & autohint" for all fonts.
-->
<match target="font">
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
</match>
<!--
Add by [email protected]
If you don't want to use emdebedbitmap first.
you can set this "embed" with false.
<match target="font">
<edit name="embed" mode="assign">
<bool>false</bool>
</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>
重新引导后,进入即可。
如果想把linux的中文环境美化,确实比较繁琐,到现在我还没有明白。以上我提供的方法是我认为最为简单、有效的。希望能够有所帮助。
另外上边的两个文件的配置肯定有没有用的地方,但是我也实在不想把精力花费在这个上边。有经验的人可以在优化一下。
还有,fc5的输入法还算好用!
此文借鉴linuxsir.org的xn_itol的文章
首先,做一次恶,从windows的fonts目录下拷贝truetype格式的Arial*,simsun.ttc到linux下的/usr/local/share/fonts/windows目录下,然后以root执行下面的命令
cd /usr/local/share/fonts/windows
ttmkfdir
cp fonts.scale fonts.dir
chkfontpath --add /usr/local/share/fonts/windows
再分别新建/etc/fonts/local.conf文件,并填写如下内容:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/local.conf file for local customizations -->
<fontconfig>
<!--
Enable sub-pixel rendering
<match target="font">
<test qual="all" name="rgba">
<const>unknown</const>
</test>
<edit name="rgba" mode="assign"><const>rgb</const></edit>
</match>
-->
<!-- from versace -->
<match target="pattern">
<test qual="any" name="family">
<string>fixed</string>
</test>
<edit name="family" mode="assign">
<string>monospace</string>
</edit>
</match>
<match target="pattern">
<test qual="any" name="family">
<string>console</string>
</test>
<edit name="family" mode="assign">
<string>monospace</string>
</edit>
</match>
<!--match target="pattern">
<test qual="any" name="family">
<string>monospace</string>
</test>
<edit name="spacing" mode="assign">
<int>100</int>
</edit>
</match-->
<!-- Provide required aliases for standard names -->
<alias>
<family>serif</family>
<prefer>
<family>Nimbus Roman No9 L</family>
<family>DongWen--Song</family>
<family>Evermore Song</family>
<family>SimSun</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>Helvetica</family>
<family>Arial</family>
<family>Verdana</family>
<family>Tahoma</family>
<family>Bitstream Vera Sans</family>
<family>Nimbus Sans L</family>
<family>Luxi Sans</family>
<family>DongWen--Song</family>
<family>Evermore Song</family>
<family>SimSun</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Courier 10 Pitch</family>
<family>Bitstream Vera Sans Mono</family>
<family>Courier</family>
<family>Courier New</family>
<family>Andale Mono</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</family>
<family>DongWen--Song</family>
<family>Evermore Song</family>
<family>SimSun</family>
</prefer>
</alias>
<!-- Add by Firefly([email protected])
Most of Asian fonts can't explain by freetype2,
so,if these fonts have dual width(half/full) and monospacing,
you need to disable globaladvance.
当字体宽度大于等于mono时,关掉“全宽”。
这样英文就不会使用中文的宽度了 -->
<match target="font">
<test target="pattern" name="lang" compare="contains">
<string>zh-cn</string>
<string>zh-tw</string>
<string>ja</string>
<string>ko</string>
</test>
<test name="spacing" compare="more_eq">
<!--const>dual</const-->
<const>mono</const>
</test>
<edit name="globaladvance" mode="assign">
<bool>false</bool>
</edit>
<!--edit mode="assign" name="size" >
<plus><double>1</double></plus>
</edit-->
</match>
<!-- Add by [email protected]
Artificial bold for fonts without a bold version. -->
<match target="font">
<!-- check to see if the pattern requested > "medium" -->
<test target="pattern" name="weight" compare="more">
<const>medium</const>
</test>
<!-- pretend the font is bold now -->
<edit name="weight" mode="assign">
<const>bold</const>
</edit>
</match>
<!-- Add by Firefly([email protected])
如果字体里有迁入的点阵字就使用它 -->
<match target="font">
<edit name="embeddedbitmap" mode="assign">
<bool>true</bool>
</edit>
</match>
<!-- 所有字体默认使用 hinting 但关闭 autohint, 启动 AA -->
<match target="font">
<edit mode="assign" name="hintstyle" >
<const>hintslight</const>
</edit>
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
<edit name="antialias" mode="assign">
<bool>true</bool>
</edit>
</match>
<!-- from kanker but why disable AA first? -->
<!--match target="font" >
<test compare="more" name="size" qual="any" >
<double>8</double>
</test>
<test compare="less" name="size" qual="any" >
<double>15</double>
</test>
<edit mode="assign" name="antialias" >
<bool>false</bool>
</edit>
</match-->
<!--match target="font" >
<test compare="more" name="pixelsize" qual="any" >
<double>8</double>
</test>
<test compare="less" name="pixelsize" qual="any" >
<double>15</double>
</test>
<edit mode="assign" name="antialias" >
<bool>false</bool>
</edit>
</match-->
<!-- 如果 CJK 字体使用了 AA 就将 autohint 打开 -->
<match target="font">
<test name="antialias" compare="eq">
<const>true</const>
</test>
<test target="pattern" name="lang" compare="contains">
<string>zh-cn</string>
<string>zh-tw</string>
<string>ja</string>
<string>ko</string>
</test>
<edit name="autohint" mode="assign">
<const>true</const>
</edit>
</match>
<!-- Add by [email protected] -->
<match target="pattern">
<test name="lang" compare="contains">
<string>zh-cn</string>
<string>zh-tw</string>
<string>zh-hk</string>
<string>zh-mo</string>
<string>zh-sg</string>
<string>ja</string>
<string>ko</string>
</test>
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
<edit name="usegamma" mode="assign">
<if>
<less>
<name>pixelsize</name>
<double>20</double>
</less>
</if>
<bool>true</bool>
<bool>false</bool>
</edit>
</match>
<!-- Add by Firefly ([email protected])
Output non English/Latin family name. -->
<config>
<family>
<!--const>auto</const-->
<!--const>englishonly</const-->
<const>any</const>
</family>
</config>
<!-- Add by Firefly ([email protected])
Output non English/Latin family name.
NOT SUPPORTED in fedora/redhat -->
<!--other_family>
<bool>true</bool>
</other_family-->
</fontconfig>
在$home目录下,如果你是root就在/root/下,新建.fonts.conf文件,填写如下:
<?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 Wed Apr 23 20:50:03 CST 2003 -->
<!-- <dir>/usr/local/zhfonts/simsun</dir>-->
<dir>/usr/share/fonts</dir>
<dir>/usr/X11R6/lib/X11/fonts</dir>
<dir>/download/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>Simsun</family>
<family>Bitstream Vera Serif</family>
<family>Times</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>Luxi Serif</family>
<family>Kochi Mincho</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>DongWen SongTi</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>Simsun</family>
<family>Bitstream Vera Sans</family>
<family>Helvetica</family>
<family>Arial</family>
<family>Verdana</family>
<family>Nimbus Sans L</family>
<family>Luxi Sans</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>DongWen SongTi</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>
<!--
Monospace faces
-->
<alias>
<family>NSimsun</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>DongWen SongTi</family>
<family>Bitstream Vera Sans Mono</family>
<family>Courier</family>
<family>Courier New</family>
<family>Andale Mono</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</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>
<!--
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>
<!-- ysy -->
<match target="font">
<test name="pixelsize" compare="less_eq">
<double>16</double>
</test>
<test name="pixelsize" compare="more_eq">
<double>8</double>
</test>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>
<match target="font">
<test name="size" compare="less_eq">
<double>16</double>
</test>
<test name="size" compare="more_eq">
<double>8</double>
</test>
<edit name="antialias" mode="assign">
<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>Simsun</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>DongWen SongTi</family>
<family>Bitstream Vera Serif</family>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</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>Simsun</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>Bitstream Vera Sans</family>
<family>Verdana</family>
<family>Nimbus Sans L</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>
<alias>
<family>monospace</family>
<prefer>
<family>NSimsun</family>
<family>Tahoma</family>
<family>DongWen FangSong</family>
<family>DongWen HeiTi</family>
<family>DongWen KaiTi</family>
<family>Bitstream Vera Sans Mono</family>
<family>Andale Mono</family>
<family>Courier New</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>Baekmuk Dotum</family>
</prefer>
</alias>
<!--
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.3</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>
<!--
Add by [email protected]
Artificial bold for fonts without a bold version.
-->
<match target="font">
<!-- check to see if the pattern requested > "medium" -->
<test target="pattern" name="weight" compare="not_eq">
<const>medium</const>
</test>
<!-- pretend the font is bold now -->
<edit name="weight" mode="assign">
<const>bold</const>
</edit>
</match>
<!--
Add by [email protected]
Disable "Global Advance" for all mono spacing fonts.
-->
<match target="font">
<test name="spacing">
<const>mono</const>
</test>
<edit name="globaladvance">
<bool>false</bool>
</edit>
</match>
<!--
Add by [email protected]
Enable "hinting & autohint" for all fonts.
-->
<match target="font">
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
</match>
<!--
Add by [email protected]
If you don't want to use emdebedbitmap first.
you can set this "embed" with false.
<match target="font">
<edit name="embed" mode="assign">
<bool>false</bool>
</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>
重新引导后,进入即可。
如果想把linux的中文环境美化,确实比较繁琐,到现在我还没有明白。以上我提供的方法是我认为最为简单、有效的。希望能够有所帮助。
另外上边的两个文件的配置肯定有没有用的地方,但是我也实在不想把精力花费在这个上边。有经验的人可以在优化一下。
还有,fc5的输入法还算好用!
此文借鉴linuxsir.org的xn_itol的文章
相关阅读 更多 +