LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 9556|回复: 58

RedHat 9.0 8.0美化[关于美化化所出现的问题,都要在此帖后面跟帖,多谢!]

[复制链接]
发表于 2003-4-3 12:30:09 | 显示全部楼层 |阅读模式

关于美化方面的,可能我们花的时间太多了,因为fontconfig的技术在发展,有些技术还是没有解决的太好,最根本的就是对字体的支持,这不仅仅是对中文支持的外观上不好,也在其它文字方面也有此问题。在Redhat 8.0和9.0的发行标记上,我们也看到了关于字体的解决方法。但经实践,虽然能让中文字体清晰和美观,但simsun显示英文字体比较难看。现在虽然Redhat称,要以代fontconfig/Xft来取代X核心字体,但现在大多数程序都用的是X核心字体。请看Redhat 9.0发行标记的一段:



在最近的几个 Red Hat Linux 版本中,X 窗口系统下的与字体有关的问题有些令人迷惑。目前,其中有两种带有不同特点的子系统:

- 原始的(已有 15 年以上历史)子系统被称为“核心 X 字体子系统”。由这个子系统绘制的字体不是平滑字体,它们由 X 服务器处理,名称类似:

-misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1

新的字体子系统被称为“fontconfig”。它允许应用程序直接使用字体文件。fontconfig 经常与“Xft”库一起使用,这会允许应用程序在屏幕上绘制平滑字体。fontconfig 使用的名称更有“人情味儿”,它们类似:

Luxi Sans-10

随着时间的推移,fontconfig/Xft 将会取代核心 X 字体子系统。目前,使用 Qt 3 或 GTK 2 工具包(包括 KDE 和 GNOME 应用程序)的应用程序使用 fontconfig 和 Xft 字体子系统;其它程序多数使用核心 X 字体。

Red Hat 在未来可能会仅支持 fontconfig/Xft 作为默认的本地字体访问方法来取代 XFS 字体服务器。

在这里,Redhat已经说了,要随着时间的推移来解决。因为现在大多数的程序的字体都是基于核心字体的。能从根本上解决Xft字体,是要随着时间的推移。

下面的方法是没有用Xft的解决办法,但我觉得还是不错的,观感上一点也没有问题

对于fontconfig和Xft的问题,大家也可以讨论一下。

我的美化方法:


http://www.linuxsir.cn/forum.php?mod=viewthread&tid=20305
发表于 2003-4-3 13:41:20 | 显示全部楼层
在mozilla中我的英文字体,模糊。只能把字体设置成simsun.没有后面的gb-2133。怎么回事,谢谢指教。
发表于 2003-4-3 13:58:03 | 显示全部楼层
给斑竹添麻烦了,我的问题解决了,重新登陆一下就好了。不好意思!
发表于 2003-4-3 15:09:17 | 显示全部楼层
我按照redhat 8的美化方法安装了redhat8.tar.gz后,redhat 9里面的英文字体变的间距很大,不知道有没有办法修改回来
发表于 2003-4-3 15:56:35 | 显示全部楼层
我按照redhat 8的美化方法安装了redhat8.tar.gz后,redhat 9里面的英文字体变的间距很大,不知道有没有办法修改回来
发表于 2003-4-3 17:48:44 | 显示全部楼层
说一点我“美化”Rh9的经验吧:

工作都在no X的状态下进行:
telinit 1

就是参考本版那个rh8终极美化,然后需要注意的是最好
不要使用那个redhat8.tar.gz,自己去下(已经用了的就照下面再做一遍就行了)
http://www.kde.gr.jp/~akito/patc ... x-cjk-20030330.diff
http://www.kde.gr.jp/~akito/patc ... x-cjk-20021216.diff
以及
http://fontconfig.org/release/fcpackage.2_1.tar.gz
来升级一下自己的fontconfig:
tar xzf fcpackage.2_1.tar.gz
cd fcpackage.2_1/fontconfig
patch -p1 < ../fcpackage.2_1-fontconfig-fix-cjk-20030330.diff
./configure --prefix=/usr
make ; make install
cd ..
cd fcpackage.2_1/Xft
patch -p1 < ../fcpackage.2_1-Xft-2.0.1-fix-cjk-20021216.diff
./configure --prefix=/usr
make ; make install
cd /usr/X11R6/lib
rm -f libXft.so.2.1
cp libXft.so.2.0 libXft.so.2.1
chattr +i libXft.so.2.1

以及freetype:
http://www.kde.gr.jp/~akito/patc ... 2.1.3-ttcmap4.patch
http://prdownloads.sourceforge.n ... c2.tar.bz2?download
然后
tar xjf freetype-2.1.4rc2.tar.bz2
cd freetype-2.1.4rc2
patch -p1 < ../freetype-2.1.1-ttcmap4.patch
./configure --prefix=/usr
make ; make install


我的simsun是放在/usr/share/fonts/zh_CN/TrueType/simsun下面的。
# pwd
/usr/share/fonts/zh_CN/TrueType/simsun
# ls
encodings.dir  fonts.cache-1  fonts.dir  fonts.scale  simsun.ttc
# cat fonts.dir
51
simsun.ttc -misc-fixed-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
ai=0.2:simsun.ttc -misc-simsun-medium-o-normal--0-0-0-0-c-0-gb2312.1980-0
ai=0.4:simsun.ttc -misc-simsun-medium-i-normal--0-0-0-0-c-0-gb2312.1980-0
ab=y:simsun.ttc -misc-simsun-bold-r-normal--0-0-0-0-c-0-gb2312.1980-0
ai=0.2:ab=y:simsun.ttc -misc-simsun-bold-o-normal--0-0-0-0-c-0-gb2312.1980-0
ai=0.4:ab=y:simsun.ttc -misc-simsun-bold-i-normal--0-0-0-0-c-0-gb2312.1980-0
sw=1:bw=0.5:simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-c-0-iso8859-1
ab=y:sw=1:bw=0.5:simsun.ttc -misc-simsun-bold-r-normal--0-0-0-0-c-0-iso8859-1
ai=0.2:sw=1:bw=0.5:simsun.ttc -misc-simsun-medium-o-normal--0-0-0-0-c-0-iso8859-1
ai=0.4:sw=1:bw=0.5:simsun.ttc -misc-simsun-medium-i-normal--0-0-0-0-c-0-iso8859-1
ai=0.2:ab=y:sw=1:bw=0.5:simsun.ttc -misc-simsun-bold-o-normal--0-0-0-0-c-0-iso8859-1
ai=0.4:ab=y:sw=1:bw=0.5:simsun.ttc -misc-simsun-bold-i-normal--0-0-0-0-c-0-iso8859-1
ai=-0.2:sw=1:bw=0.5:simsun.ttc -misc-simsun-medium-ro-normal--0-0-0-0-c-0-iso8859-1
ai=-0.4:sw=1:bw=0.5:simsun.ttc -misc-simsun-medium-ri-normal--0-0-0-0-c-0-iso8859-1
ai=-0.2:ab=y:sw=1:bw=0.5:simsun.ttc -misc-simsun-bold-ro-normal--0-0-0-0-c-0-iso8859-1
ai=-0.4:ab=y:sw=1:bw=0.5:simsun.ttc -misc-simsun-bold-ri-normal--0-0-0-0-c-0-iso8859-1
ai=-0.4:simsun.ttc -misc-simsun-medium-ri-normal--0-0-0-0-c-0-gb2312.1980-0
ai=-0.4:ab=y:simsun.ttc -misc-simsun-bold-ri-normal--0-0-0-0-c-0-gb2312.1980-0
ai=-0.2:simsun.ttc -misc-simsun-medium-ro-normal--0-0-0-0-c-0-gb2312.1980-0
ai=-0.2:ab=y:simsun.ttc -misc-simsun-bold-ro-normal--0-0-0-0-c-0-gb2312.1980-0
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-c-0-gbk-0
ai=0.2:simsun.ttc -misc-simsun-medium-o-normal--0-0-0-0-c-0-gbk-0
ai=0.4:simsun.ttc -misc-simsun-medium-i-normal--0-0-0-0-c-0-gbk-0
ab=y:simsun.ttc -misc-simsun-bold-r-normal--0-0-0-0-c-0-gbk-0
ai=0.2:ab=y:simsun.ttc -misc-simsun-bold-o-normal--0-0-0-0-c-0-gbk-0
ai=0.4:ab=y:simsun.ttc -misc-simsun-bold-i-normal--0-0-0-0-c-0-gbk-0
ai=-0.4:simsun.ttc -misc-simsun-medium-ri-normal--0-0-0-0-c-0-gbk-0
ai=-0.4:ab=y:simsun.ttc -misc-simsun-bold-ri-normal--0-0-0-0-c-0-gbk-0
ai=-0.2:simsun.ttc -misc-simsun-medium-ro-normal--0-0-0-0-c-0-gbk-0
ai=-0.2:ab=y:simsun.ttc -misc-simsun-bold-ro-normal--0-0-0-0-c-0-gbk-0
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-c-0-iso10646-1
ai=0.2:simsun.ttc -misc-simsun-medium-o-normal--0-0-0-0-c-0-iso10646-1
ai=0.4:simsun.ttc -misc-simsun-medium-i-normal--0-0-0-0-c-0-iso10646-1
ab=y:simsun.ttc -misc-simsun-bold-r-normal--0-0-0-0-c-0-iso10646-1
ai=0.2:ab=y:simsun.ttc -misc-simsun-bold-o-normal--0-0-0-0-c-0-iso10646-1
ai=0.4:ab=y:simsun.ttc -misc-simsun-bold-i-normal--0-0-0-0-c-0-iso10646-1
ai=-0.4:simsun.ttc -misc-simsun-medium-ri-normal--0-0-0-0-c-0-iso10646-1
ai=-0.4:ab=y:simsun.ttc -misc-simsun-bold-ri-normal--0-0-0-0-c-0-iso10646-1
ai=-0.2:simsun.ttc -misc-simsun-medium-ro-normal--0-0-0-0-c-0-iso10646-1
ai=-0.2:ab=y:simsun.ttc -misc-simsun-bold-ro-normal--0-0-0-0-c-0-iso10646-1
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-c-0-gb18030.2000-0
ai=0.2:simsun.ttc -misc-simsun-medium-o-normal--0-0-0-0-c-0-gb18030.2000-0
ai=0.4:simsun.ttc -misc-simsun-medium-i-normal--0-0-0-0-c-0-gb18030.2000-0
ab=y:simsun.ttc -misc-simsun-bold-r-normal--0-0-0-0-c-0-gb18030.2000-0
ai=0.2:ab=y:simsun.ttc -misc-simsun-bold-o-normal--0-0-0-0-c-0-gb18030.2000-0
ai=0.4:ab=y:simsun.ttc -misc-simsun-bold-i-normal--0-0-0-0-c-0-gb18030.2000-0
ai=-0.4:simsun.ttc -misc-simsun-medium-ri-normal--0-0-0-0-c-0-gb18030.2000-0
ai=-0.4:ab=y:simsun.ttc -misc-simsun-bold-ri-normal--0-0-0-0-c-0-gb18030.2000-0
ai=-0.2:simsun.ttc -misc-simsun-medium-ro-normal--0-0-0-0-c-0-gb18030.2000-0
ai=-0.2:ab=y:simsun.ttc -misc-simsun-bold-ro-normal--0-0-0-0-c-0-gb18030.2000-0

fonts.scale的内容和fonts.dir相同。
encodings.dir就是/usr/X11R6/lib/X11/fonts/encodings/encodings.dir
注意最好chattr +i fonts.dir fonts.scale encodings.dir以免其它程序改变这里面的内容。

我的XFree86Config里面相应内容:
# Multiple FontPath entries are allowed (they are concatenated together)
# By default, Red Hat 6.0 and later now use a font server independent of
# the X server to render fonts.

        RgbPath      "/usr/X11R6/lib/X11/rgb"
        FontPath     "/usr/share/fonts/zh_CN/TrueType/simsun"
        FontPath     "unix/:7100"
EndSection

Section "Module"
        Load  "xtt"
        Load  "dbe"
        Load  "extmod"
        Load  "fbdevhw"
        Load  "glx"
        Load  "record"
#       Load  "freetype"
        Load  "type1"
        Load  "dri"


我的/etc/fonts/fonts.conf见附件。
$ cat /etc/gtk/gtkrc.zh_CN
# $(gtkconfigdir)/gtkrc.zh_CN
#
# This file defines the fontsets for Chinese language (zh) using
# the simplified chinese standard GuoBiao as in mainland China (CN)
#
# 1999, Pablo Saratxaga <pablo@mandrakesoft.com>
#

style "gtk-default-zh-cn" {
#       fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
#                 -*-*-medium-r-normal--16-*-*-*-*-*-gb2312.1980-0,*-r-*"
       fontset = "-misc-simsun-medium-r-normal--12-*-*-*-*-*-iso10646-1,\
                  -*-*-medium-r-normal--12-*-*-*-*-*-gbk-0,*-r-*"
}
class "GtkWidget" style "gtk-default-zh-cn"
发表于 2003-4-3 18:32:00 | 显示全部楼层
注意上面过程中的
cd /usr/X11R6/lib
rm -f libXft.so.2.1
cp libXft.so.2.0 libXft.so.2.1
chattr +i libXft.so.2.1
几步,很关键,那个SimSun的英文为什么会变很宽,以及为什么没有字体加粗变斜都得靠这个解决。
因为我发现RedHat9会自己把libXft.so.2这个连接改回到原装的那个libXft.so.2.1(即使你把原装的改名成libXft.so.2.1.old也一样!!),所以必须删除那个原装的libXft.so.2.1。
经过这些改动之后,重启X,应该SimSun以及英文以及汉字的加斜加粗都会正常的。
发表于 2003-4-3 21:25:22 | 显示全部楼层
感谢。
不知道我的安装了redhat8.tar.gz,还能不能解决英文变宽的问题?
还有安装redhat8.tar.gz的美化方法和下面的方法有什莫区别?
1 在.bashrc里面加入:
export GDK_USE_XFT=0

2 在/etc/fonts/fonts.conf里面加入
<dir>/home/fonts</dir>

加在什么地方呢?就加在下面这三行的前面就行

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


3 所需要的字体有三个、simsun.ttc、tahomabd.ttf以及tahoma.ttf

4.fonts.dir文件为:见附件,使用方法:
把fonts.txt改名为fonts.dir,然后fonts.dir复制成fonts.scale文件。
#cp fonts.dir fonts.scale


5.在/home/目录下建一个fonts目录,把三种字体全部以及fonts.dir和fonts.scale拷到/home/fonts目录。

如果你美化过完毕后,没有见到simsun字体,或者在mozilla的字体设置中没有发现simsun,那就是这步出了问题,一定要把五个文件[simsun.ttc;tahomabd.ttf;tahoma.ttf;fonts.dir;fonts.scale]
都放到/usr/fonts这个目录下
6.修改/etc/X11/XF86Config文件

1]在FontPath "unix/:7100"前一行,加入FontPath "/home/fonts"这样的一行

2]在Section "Module"这段内加入
Load "xtt"这一行
把Load "freetype"和Load "type1"这两行前面加上#号来注销掉。

7.修改/etc/gtk/gtkrc.zh_CN
为:
style "gtk-default-zh-cn" {
fontset = "-misc-simsun-medium-r-normal--14-*-*-*-*-*-iso10646-1,\
-misc-simsun-medium-r-normal--14-*-*-*-*-*-iso10646-1"
}
class "GtkWidget" style "gtk-default-zh-cn"

如果出现间字体间距过大,就用我这个文件,下载后,改名为gtkrc.zh_CN(注意文件名有大小写之分),然后放到/etc/gtk目录下
http://www.linuxsir.cn/bbs/attachm...s=&postid=45923

8.gnome中设置字体为san12

9.在kde中的控制中心-》观感-》字体中,你可以把字体设置为simsun 11就好了。

10.mozilla的字体
mozilla菜单edit->preference-》appearence-》fonts中。如图设置

全部设定后,不要忘记重新引导一下机器。

11.xmms的字体设置[Iou兄弟提供解决方法]

xmms的playlist字体为:
-microsoft-tahoma-medium-r-normal-*-*-120-*-*-p-*-iso8859-1,-misc-simsun-medium-r-normal-*-*-120-*-*-c-*-gbk-0
main window是:
-microsoft-tahoma-medium-r-normal-*-*-120-*-*-p-*-iso8859-1,-misc-simsun-medium-r-normal-*-*-120-*-*-c-*-gbk-0

12.gnome中的终端的字体设置
在终端的菜单上:选[编辑]-》配制文件-》编辑-》general中,把字体设置为simsun。就OK了。极为漂亮。

13.解决KDE英文不美观的问题[参考了dpmcl兄弟的建议]

运行
#qtconfig
将fonts下的Enable Anti-Aliased Font Support (Xft)
选项禁止,在字体设置中取消字体平滑
就可以了,大家试一下.
发表于 2003-4-3 21:58:30 | 显示全部楼层
北南兄,这个好像有点不太好看:(

行距也太小
发表于 2003-4-3 23:49:52 | 显示全部楼层
最简单的方法莫过于下载公社的8.0美化RPM包
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表