Fedora 字体发虚的解决方法,粗体显示及美化注意事项

Fedora 字体发虚的解决方法,粗体显示及美化注意事项(转自Linuxsir)

Fedora 下字体发虚,原因是缺少内嵌点阵字体。
很明显解决的方法就是添加一个有内嵌点阵的字体

一 最简单的“犯法”
1 为Fdora 添加 fireflysung字体,这里下载
http://www.study-area.org/apt/firefly-font/
或者者用arphic-uming,可以在任何一个Debian的mirror下载,也内嵌了firefly点阵字
http://debian.cn99.com/debian/pool/...f-arphic-uming/
2 解压后,把fireflysung.ttf或者uming.ttf复制到 /usr/share/fonts/chinese/TrueType

3 桌面─> 首选项 ─ > 字体,把字体都设置为 AP RL Newsung 或者AR PL ShanHeiSun Uni,字体渲染选择单色,注销,enjoy!

二 进一步的美化工作
如果对字体显示要求高点的话如:有粗体字,就需要多一些的步骤了。
不多说了。开始,Let's Go!
1 首先要先提一下要注意的事项:

a 不建议再用XMMS等古老的GTK +(GTK1)程序了,Fedora是很fashion,bleeding的发行,再用古老的程序
和Fedora显得不太协调了,所以不需要用ttmkfdir/ mkfontscale,生成字体索引,也不需要对/etc/gtkrc.zh_CN
,/etc/gtkrc.utf-8进行配置。如果要对这些使用core字体系统的古老程序配置,注意还要把字体路径加入xorg.conf的 Files Section
如 FontPath "/path/to/fonts"

b 不应对/etc/fonts/fonts.conf 做任何的改动,因为下次升级fontconfig包后,fonts.con会被新的替换掉。
应该在/etc/fonts/local.conf进行修改,如果用fontconfig-2.3.0以上的应该把 配置放在/etc/fonts/conf.d内
(按照旧的方式放在local.conf也可以)并以一个2位数字做首文件名,如:/etc/fonts/conf.d/10myfonts.conf, /etc/fonts/conf.d/20autohint.conf。

c 新版的freetype(freetype-2.1.10)已经有了虚拟粗体的算法,不需要打补丁就可以有粗体字显示,可以自行升级之。
但是 还要配合新版的fontconfig(2.3.0以上),libXft(2.1.7)。这些在FC5中肯定会有的,但现在还得动动手,升级一下。

d 既然用Linux了,就尽量不要去用那些未经授权的字体simsun ,simsunbd了。(很快就发布的文泉驿字体是很好的选择)

fireflysung的英文字体不是很好看。可以考虑用Hevetica或者Bitsteam Vera配合fireflysung中文字体。
所以首先要对字体进行重排,小弟已经升级fontconfig-2.3.2了,就安新的配置方式叙述了。还是fontconfig-2.2.X
是话,就在local.conf配置。

Fedora已经带了Hevetica字体的,看不到是因为字体路径没有被加进配置文件。

在/etc/fonts/conf.d/ 下建立一个用户自定义配置文件10myfonts.conf
具体的配置和简单的解说可以看下面。

代码:
  
  

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- conf.d/myfont.conf -->
<fontconfig>
<dir>/usr/share/fonts</dir>
<dir>/usr/share/fonts/local</dir>
<dir>/usr/local/share/fonts</dir>
<dir>~/.fonts</dir>
<!--加入点阵字体路径-->
<dir>/usr/X11R6/lib/X11/fonts</dir>

<!--
配置粗体中文显示,要配合freetype-2.1.10,libxft-2.1.7,fontconfig-2.3.X
-->

<match target="font">
<!-- check to see if the font is just regular -->
<test name="weight" compare="less_eq">
<int>100</int>
</test>
<!-- check to see if the pattern requests bold -->
<test target="pattern" name="weight" compare="more_eq">
<int>180</int>
</test>
<!-- set the embolden flag -->
<edit name="embolden" mode="assign">
<bool>true</bool>
</edit>
</match>

<!--
default settings for all fonts.
-->
<match target="font" >
<!-- 打开字体的反锯齿即AA,大号字用AA会更美观 -->
<edit mode="assign" name="antialias" >
<bool>t</bool>
</edit>
<edit mode="assign" name="hintstyle" >
<const>hintslight</const>
</edit>
<!-- 打开hint -->
<edit mode="assign" name="hint" >
<bool>t</bool>
</edit>
<!-- 打开autohint -->
<edit mode="assign" name="autohint" >
<bool>t</bool>
</edit>
<!-- 关闭 Tahoma,Verdana字体的autohint -->
target="font">
<test name="family">
<string>Tahoma</string>
<string>Verdana</string>
</test>
<edit name="autohint">
<bool>false</bool>
</edit>
</match>

<!-- 关闭 8到16号字体的AA -->
<match target="font" >
<!--
<test compare="contains" name="lang" >
<string>zh-cn</string>
<string>zh-tw</string>
<string>ja</string>
<string>ko</string>
</test>
-->
<test compare="more_eq" name="pixelsize" qual="any" >
<double>8</double>
</test>
<test compare="less_eq" name="pixelsize" qual="any" >
<double>16</double>
</test>
<edit mode="assign" name="antialias" >
<bool>false</bool>
</edit>
</match>

<!-- 解决英文字体间距过宽 -->
<match target="font">

<test target="pattern" name="lang" compare="contains">
<string>zh-tw</string>
<string>zh-cn</string>
<string>ja</string>
<string>ko</string>
</test>
<edit name="spacing">
<const>proportional</const>
</edit>
<edit name="globaladvance">
<bool>false</bool>
</edit>
</match>

<!--
设定中文最小字号,使得小字的中文美观
-->
<match target="font" >
<test name="family" qual="any" >
<string>SimSun</string>
<string>NSimSun</string>
<string>SimHei</string>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL SenKai Uni</family>
<string>AR PL New Sung</string>
<family>FZSongTi</family>
<family>FZMingTiB</family>
<string>FangSong_GB2312</string>
<string>KaiTi_GB2312</string>
</test>
<test compare="more_eq" name="pixelsize" >
<int>8</int>
</test>
<test compare="less_eq" name="pixelsize" >
<int>12</int>
</test>
<edit compare="eq" name="pixelsize" >
<int>12</int>
</edit>
</match>
<!--
把serif ,sans,monospace的family(字体族)重新排序,适应中文用户的用字习惯
-->
<alias>
<family>serif</family>
<prefer>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>Luxi Serif</family>
<family>Times</family>
<family>Simsun</family>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL SenKai Uni</family>
<family>AR PL New Sung</family>
<family>FZSongTi</family>
<family>FZMingTiB</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>Helvetica</family>
<family>Arial</family>
<family>Tahoma</family>
<family>Verdana</family>
<family>SimSun</family>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL SenKai Uni</family>
<family>AR PL New Sung</family>
<family>FZSongTi</family>
<family>FZMingTiB</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>Andale Mono</family>
<family>Courier New</family>
<family>Bitstream Vera Sans Mono</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</family>
<family>Simsun</family>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL SenKai Uni</family>
<family>AR PL New Sung</family>
<family>FZSongTi</family>
<family>FZMingTiB</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>Baekmuk Dotum</family>
</prefer>
</alias>

</fontconfig>


下面简单说一下手工升级freetype.fontconfig.libXft的过程。喜欢用rpm包的话,可以修改或参考旧的spec文件,再编译成rpm包安装(不建议新手采用rpm包的方法)。


下载

freetype http://prdownloads.sourceforge.net/...-2.1.10.tar.bz2
fontconfig http://www.fontconfig.org/release/
libXft http://xlibs.freedesktop.org/release/?C=N;O=D

解压freetype源代码
#cd freetype-2.1.10
#./configure --prefix=/usr
#make
#make install

解压fontconfig源代码
#cd fontconfig-2.3.2
#./configure --disable-docs --sysconfdir=/etc --prefix=/usr --mandir=/usr/share/man
#make
#make install

解压libXft源代码
#cd libXft-2.1.7
#./configure --prefix=/usr/X11R6
#make
#make install

代码:
  
  


<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- conf.d/myfont.conf -->
<fontconfig>
<dir>/usr/share/fonts</dir>
<dir>/usr/share/fonts/local</dir>
<dir>/usr/local/share/fonts</dir>
<dir>~/.fonts</dir>
<!--加入点阵字体路径-->
<dir>/usr/X11R6/lib/X11/fonts</dir>

<!--
配置粗体中文显示,要配合freetype-2.1.10,libxft-2.1.7,fontconfig-2.3.X
-->

<match target="font">
<!-- check to see if the font is just regular -->
<test name="weight" compare="less_eq">
<int>100</int>
</test>
<!-- check to see if the pattern requests bold -->
<test target="pattern" name="weight" compare="more_eq">
<int>180</int>
</test>
<!-- set the embolden flag -->
<edit name="embolden" mode="assign">
<bool>true</bool>
</edit>
</match>

<!--
default settings for all fonts.
-->
<match target="font" >
<!-- 打开字体的反锯齿即AA,大号字用AA会更美观 -->
<edit mode="assign" name="antialias" >
<bool>t</bool>
</edit>
<edit mode="assign" name="hintstyle" >
<const>hintslight</const>
</edit>
<!-- 打开hint -->
<edit mode="assign" name="hint" >
<bool>t</bool>
</edit>
<!-- 打开autohint -->
<edit mode="assign" name="autohint" >
<bool>t</bool>
</edit>
<!-- 关闭 Tahoma,Verdana字体的autohint -->
target="font">
<test name="family">
<string>Tahoma</string>
<string>Verdana</string>
</test>
<edit name="autohint">
<bool>false</bool>
</edit>
</match>

<!-- 关闭 8到16号字体的AA -->
<match target="font" >
<!--
<test compare="contains" name="lang" >
<string>zh-cn</string>
<string>zh-tw</string>
<string>ja</string>
<string>ko</string>
</test>
-->
<test compare="more_eq" name="pixelsize" qual="any" >
<double>8</double>
</test>
<test compare="less_eq" name="pixelsize" qual="any" >
<double>16</double>
</test>
<edit mode="assign" name="antialias" >
<bool>false</bool>
</edit>
</match>

<!-- 解决英文字体间距过宽 -->
<match target="font">

<test target="pattern" name="lang" compare="contains">
<string>zh-tw</string>
<string>zh-cn</string>
<string>ja</string>
<string>ko</string>
</test>
<edit name="spacing">
<const>proportional</const>
</edit>
<edit name="globaladvance">
<bool>false</bool>
</edit>
</match>

<!--
设定中文最小字号,使得小字的中文美观
-->
<match target="font" >
<test name="family" qual="any" >
<string>SimSun</string>
<string>NSimSun</string>
<string>SimHei</string>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL SenKai Uni</family>
<string>AR PL New Sung</string>
<family>FZSongTi</family>
<family>FZMingTiB</family>
<string>FangSong_GB2312</string>
<string>KaiTi_GB2312</string>
</test>
<test compare="more_eq" name="pixelsize" >
<int>8</int>
</test>
<test compare="less_eq" name="pixelsize" >
<int>12</int>
</test>
<edit compare="eq" name="pixelsize" >
<int>12</int>
</edit>
</match>
<!--
把serif ,sans,monospace的family(字体族)重新排序,适应中文用户的用字习惯
-->
<alias>
<family>serif</family>
<prefer>
<family>Times New Roman</family>
<family>Nimbus Roman No9 L</family>
<family>Luxi Serif</family>
<family>Times</family>
<family>Simsun</family>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL SenKai Uni</family>
<family>AR PL New Sung</family>
<family>FZSongTi</family>
<family>FZMingTiB</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>Helvetica</family>
<family>Arial</family>
<family>Tahoma</family>
<family>Verdana</family>
<family>SimSun</family>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL SenKai Uni</family>
<family>AR PL New Sung</family>
<family>FZSongTi</family>
<family>FZMingTiB</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>Andale Mono</family>
<family>Courier New</family>
<family>Bitstream Vera Sans Mono</family>
<family>Luxi Mono</family>
<family>Nimbus Mono L</family>
<family>Simsun</family>
<family>AR PL ShanHeiSun Uni</family>
<family>AR PL SenKai Uni</family>
<family>AR PL New Sung</family>
<family>FZSongTi</family>
<family>FZMingTiB</family>
<family>Kochi Gothic</family>
<family>AR PL KaitiM GB</family>
<family>Baekmuk Dotum</family>
</prefer>
</alias>

</fontconfig>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值