LinuxSir.cn,穿越时空的Linuxsir!

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

关于不使用firefly补丁对系统进行美化的探讨

[复制链接]
发表于 2005-3-14 15:36:40 | 显示全部楼层 |阅读模式
发这个帖子的意思,其实是希望大家能少谈一些美化方面的东西,集中在一个帖子解决了就算了。高手们尽量纠正我的错误,大家一起讨论,最终相信能解决arch的美化问题。

说明:
1、修改任何文件之前,请做好相应的备份。
2、没有重装系统,只是脑子里虚拟了一下美化过程。所以如果有什么错误,请多多包涵,大家再商讨解决。
3、这种不用firefly补丁的美化方法,有一个缺点,就是占用空间稍嫌大了些,下载的那四个字体大概要几十兆。不过有个好处就是可以免受firefly补丁的影响,完全使用官方源。

正文:

1、正常安装系统,安装你喜欢的桌面环境,让它可以正常运行。

2、去http://www.linuxsky.net/down/ftproot/incoming/cnhnln/songti/
你会看到一系列压缩了的的字体文件,我们需要的是其中文件名里不包含'Hei'的四个。

3、解压缩这几个字体,把它们cp到/usr/share/fonts/linuxsong/下(or anywhere you want)。同时你可以把你喜欢的字体拷贝到这里来,比如我就拷贝了simsun、simhei、simli等,以备不时之需。
然后:
[php]
cd /usr/share/fonts/linuxsong
fc-cache -fv
ttmkfdir -d ./ -o ./fonts.dir
cp fonts.dir fonts.scale
[/php]

4、在xorg.conf中字体目录那一节加入/usr/share/fonts/linuxsong这个路径
5、配置/etc/fonts/fonts.conf,有很多类似:

[php]
<alias>
          <family>serif</family>
          <prefer>
                  <family>fontsname</family>
                  <family>.....</family>
                  ......
          </prefer>
</alias>
[/php]

这样的段落。一般来说这决定了系统自动选择字体的顺序(如果我错了请纠正我)。那么我们就要把我们最先要使用的中文字体放在所有中文字体的前面。通常系统默认的第一个中文字体是Luxi XXX。我们就把我们的LinuxSong放到它的前面(请按自己看到的情况灵活处理),类似如下:

[php]
<alias>
          <family>serif</family>
          <prefer>
                      ......
                      <family>LinuxSong</family>
                      <family>Luxi Serif</family>
                      ......
          </prefer>
</alias>
[/php]
找到所有类似段落,均做如上的插入。

6、配置/etc/fonts/local.conf,在</fontconfig>之前加入:
关闭几个中文字体的autohint。如我这里是这样的:
[php]
<match target="font" >
        <test compare="eq" name="family" qual="any" >
                <string>SimSun</string>
                <string>SimHei</string>
                <string>LinuxSong</string>
                <string>Lisu</string>
                <string>YouYuan</string>
        </test>
        <edit name="hinting" ><bool>true</bool></edit>
        <edit name="autohint" > <bool>false</bool></edit>
</match>
[/php]

关闭LinuxSong和Simsun在指定范围内的AA,使小字体的显示更清晰。如果你还有其它内含点阵的字体,也可以把它加入到这里:
[php]
<match target="font" >
        <test compare="eq" name="family" qual="any" >
                <string>LinuxSong</string>
                <string>SimSun</string>
        </test>
        <test compare="more_eq" name="pixelsize" ><double>12</double></test>
        <test compare="less_eq" name="pixelsize" ><double>16</double></test>
        <edit name="antialias" >
                <bool>false</bool>
        </edit>
</match>
[/php]

纠正中文字体显示英文时的“全角”现象:
[php]
<match target="font" >
  <test compare="contains" target="pattern" name="lang" >
    <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>
[/php]

7、进入你的x桌面系统,调整字体为一种你觉得漂亮的英文字体(中文字体会自动用LinuxSong来显示)。这时斜体粗体粗斜体等等的显示应该已经都没有问题了。

8、另:在我这里,启动x时,需要用startx -- -dpi 100来使屏幕字体使用100dpi的分辨率(否则字体设置方面会有些影响,说不清楚,总之就是美化不好,程序之间还不统一)。我没有找到如何让startx自动以dpi 100的参数启动的方法 我太菜了……哪位知道请发贴说一下。目前在.bashrc里加了个alias startx='startx -- -dpi 100'暂时解决。用gdm和kdm的朋友应该没有这个问题吧。



此贴等朋友们纠正错误,添加内容,持续修改更新。
发表于 2005-3-14 16:34:16 | 显示全部楼层
置顶啊。
希望大家能少谈一些美化方面的东西,集中在一个帖子解决了就算了

支持
回复 支持 反对

使用道具 举报

发表于 2005-3-14 16:42:48 | 显示全部楼层
修改X中字体解析度的方法:
     编辑/etc/X11/Xresources,修改Xft.dpi: 96,将96替换成你想要的解析度。
回复 支持 反对

使用道具 举报

发表于 2005-3-14 17:02:48 | 显示全部楼层
cat /etc/X11/Xresources
cat: /etc/X11/Xresources: 没有那个文件或目录

ls /etc/X11/xdm
GiveConsole  Xaccess     Xservers  Xsetup_0  authdir  pixmaps
TakeConsole  Xresources  Xsession  Xwilling  chooser  xdm-config


cat /etc/X11/xdm/Xresources
! $Xorg: Xresources,v 1.3 2000/08/17 19:54:17 cpqbld Exp $
!
!
!
!
! $XFree86: xc/programs/xdm/config/Xres.cpp,v 1.6 2003/01/04 03:11:31 dawes Exp $
!


xlogin*login.translations: #override \
        Ctrl<Key>R: abort-display()\n\
        <Key>F1: set-session-argument(failsafe) finish-field()\n\
        <Key>Delete: delete-character()\n\
        <Key>Left: move-backward-character()\n\
        <Key>Right: move-forward-character()\n\
        <Key>Home: move-to-begining()\n\
        <Key>End: move-to-end()\n\
        Ctrl<Key>KP_Enter: set-session-argument(failsafe) finish-field()\n\
        <Key>KP_Enter: set-session-argument() finish-field()\n\
        Ctrl<Key>Return: set-session-argument(failsafe) finish-field()\n\
        <Key>Return: set-session-argument() finish-field()




xlogin*greeting: Welcome to CLIENTHOST
xlogin*namePrompt: \040\040\040\040\040\040\040Login:

xlogin*fail: Login incorrect

#if WIDTH > 800
xlogin*greetFont: -adobe-helvetica-bold-o-normal--24-240-75-75-p-138-iso8859-1
xlogin*font: -adobe-helvetica-medium-r-normal--18-180-75-75-p-98-iso8859-1
xlogin*promptFont: -adobe-helvetica-bold-r-normal--18-180-75-75-p-103-iso8859-1
xlogin*failFont: -adobe-helvetica-bold-r-normal--18-180-75-75-p-103-iso8859-1
#else
xlogin*greetFont: -adobe-helvetica-bold-o-normal--17-120-100-100-p-92-iso8859-1
xlogin*font: -adobe-helvetica-medium-r-normal--12-120-75-75-p-67-iso8859-1
xlogin*promptFont: -adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso8859-1
xlogin*failFont: -adobe-helvetica-bold-o-normal--14-140-75-75-p-82-iso8859-1
#endif

#ifdef COLOR



xlogin*borderWidth: 1
xlogin*frameWidth: 5
xlogin*innerFramesWidth: 2
xlogin*shdColor: grey30
xlogin*hiColor: grey90
xlogin*background: grey
!xlogin*foreground: darkgreen
xlogin*greetColor: Blue3

xlogin*failColor: red
*Foreground: black
*Background: #fffff0
#else

xlogin*borderWidth: 3
xlogin*frameWidth: 0
xlogin*innerFramesWidth: 1
xlogin*shdColor: black
xlogin*hiColor: black





#endif

#if PLANES >= 8
xlogin*logoFileName: /usr/X11R6/lib/X11/xdm/pixmaps/xorg.xpm
#else
xlogin*logoFileName: /usr/X11R6/lib/X11/xdm/pixmaps/xorg-bw.xpm
#endif
xlogin*useShape: true
xlogin*logoPadding: 10


XConsole.text.geometry: 480x130
XConsole.verbose:       true
XConsole*iconic:        true
XConsole*font:          fixed

Chooser*geometry:               700x500+300+200
Chooser*allowShellResize:       false
Chooser*viewport.forceBars:     true
Chooser*label.font:             *-new century schoolbook-bold-i-normal-*-240-*
Chooser*label.label:            XDMCP Host Menu from CLIENTHOST
Chooser*list.font:              -*-*-medium-r-normal-*-*-230-*-*-c-*-iso8859-1
Chooser*Command.font:           *-new century schoolbook-bold-r-normal-*-180-*

找不到Xft:dpi
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-14 17:14:39 | 显示全部楼层
同楼上。
回复 支持 反对

使用道具 举报

发表于 2005-3-14 17:52:21 | 显示全部楼层
自己建一个,或者建立~/.Xresources也行。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-14 17:53:29 | 显示全部楼层
自己建一个要怎么写啊……
我倒是试过建一个.xserverrc。哈哈,搞的x启动不起来。
回复 支持 反对

使用道具 举报

发表于 2005-3-14 20:48:12 | 显示全部楼层
Post by diony
自己建一个要怎么写啊……
我倒是试过建一个.xserverrc。哈哈,搞的x启动不起来。

是~/.Xresources。
只要添加一行Xft.dpi:96即可,注意大小写。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-14 20:55:43 | 显示全部楼层
收到。又学了一招。呵呵。
回复 支持 反对

使用道具 举报

发表于 2005-3-15 00:41:46 | 显示全部楼层
粗体咋办?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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