chengxiaomei 发表于 2003-6-11 17:42:33

我的字体有问题

按照公社的文章“为 Redhat Linux 添加新字体”给系统添加了字体,中文显示正常,英文还是不正常阿,不是tahoma,这是为什么阿

atfa 发表于 2003-6-12 14:03:23

你首先要把你的具体过程说清楚
然后把你的配置文件的关键部分
贴出来

chengxiaomei 发表于 2003-6-12 15:41:57

我按照如下方法添加字体:


//////////////////////////////////////////////////////////////////////////////////////////
为核心 X 字体子系统添加字体

[注]
以下部分应该对 Redhat 9.0 之前的版本也适用, 因为 核心 X 字体子系统存在
于迄今为止的版本中.

"如果你想给你的 Red Hat Linux 9 系统添加新字体,根据使用新字体的字体子系统而

,你必须明确所需步骤。对于核心 X 字体子系统,你必须:
1. 创建 /usr/share/fonts/local/ 目录(如果它不存在):
mkdir /usr/share/fonts/local/"

- 这一步没问题.

"如果你必须要创建 /usr/share/fonts/local/,你就必须把它添加到 X 字体服务器的

径中:
chkfontpath --add /usr/share/fonts/local/"

- 如果是刚创建的 /usr/share/fonts/local/, 那么执行这一行命令会提示错误
因为系统在这个目录里找不到 fonts.dir 文件, 然后就不 add.. 不过没关系,
这一步跳过去, 在第三步之后做.

"2. 把新字体文件复制到 /usr/share/fonts/local/ 中"

- 照做.

"3. 使用以下命令来更新字体信息:
ttmkfdir -d /usr/share/fonts/local/ -o /usr/share/fonts/local/fonts.scale"

- 照做. 然后:
1) 把 fonts.scale 拷贝出来一份 fonts.dir.
2) chkfontpath --add /usr/share/fonts/local/

"4. 使用以下命令来重新启动 xfs 字体服务器:
service xfs reload"

- 这一步我没成功, 因为我发现 redhat 9 里面没有 service 这个命令. 于是
用笨办法解决: 退出 X, 再 startx.

以上这些步骤做完之后, 所有 gtk 1.2 的程序里有关字体的部分 (如 xmms 的字体设置
里) 都多出来我们要的新字体, 像 simsun, tahoma. 这时可以在程序内部直接使用了.
比如我们让歌曲列表里的中文使用 simsum, 英文使用 tahoma, 可以这样做:

1) 先在 xmms 的 Fonts 里勾上选项 "Use fontsets" - 让 xmms 支持双字节的
中文字体;
2) 在 播放清单 部分浏览字体, 选择使用 simsum:
-misc-simsun-medium-r-normal-*-*-120-*-*-c-*-koi8-r
(不用拷这个, 选上 simsun 它自己就出来了)

对于英文字体的要用 tahoma 就这么来, 一点小技巧:

把这段 "-misc-simsun-medium-r-normal-*-*-120-*-*-c-*-koi8-r" ^x 剪切下来,
再选字体为 tahoma, 出现这个:

-microsoft-tahoma-medium-r-normal-*-*-120-*-*-p-*-viscii1.1-1

好了, 在后面加个逗号, 把刚才剪切的那段东东 ^v 粘贴在后面成为:

-microsoft-tahoma-medium-r-normal-*-*-120-*-*-p-*-viscii1.1-1,\
-misc-simsun-medium-r-normal-*-*-120-*-*-c-*-koi8-r

这么一行, 保存一下, 于是歌曲列表就会对中文使用 simsum, 英文使用 tahoma.
再把这行拷下面 Main Window 的字体里 (要勾上 "Use X font"), 这时 xmms 主窗
口里的字体 (像那条来回滚动的歌曲信息的字体) 也和歌曲列表里的一样了.

注意, 我刚才说的是程序内部, 就象 xmms 的歌曲列表一样, 而 程序本身, 即 xmms 自
己的窗口却还是又粗又大的字体, 这时需要改 gtk 的字体设置:

1) 用 root 账号: vi /etc/gtk/gtkrc.zh_CN
2) 把原来的:

fontset = "-adobe-helvetica-medium-r-normal--16-*-*-*-*-*-iso8859-1,\
-*-*-medium-r-normal--16-*-*-*-*-*-gb2312.1980-0,*-r-*"

改成和我们上面用在 xmms 里的字体一样:

fontset =
"-microsoft-tahoma-medium-r-normal-*-*-120-*-*-p-*-viscii1.1-1,\
-misc-simsun-medium-r-normal-*-*-120-*-*-c-*-koi8-r"

3) 保存退出, 关掉 xmms 这些程序, 再重新打开, 效果就出来了! Enjoy!
//////////////////////////////////////////////////////////////////////////////////////

修改的结果是系统中的中文能够显示simsun字体,但是英文还是rh9原来的字体,不是tahoma,请问这是什么原因,需要怎么改动才能把英文也改过来。谢谢!

atfa 发表于 2003-6-12 16:12:56

你的这个“系统”是什么意思?是什么程序的字体还是桌面的字体么?

是这样的,因为你还没有按照自己的需要修改fonts.conf文件,你手工添加一段进去:


<!--
当系统为中文环境时,设置英文字体为Verdana
-->
      <match target="pattern">
                <test qual="any" name="family">
                        <string>sans-serif</string>
                </test>
                <edit name="family" mode="append" binding="strong">
                        <string>Verdana</string>
                </edit>
      </match>
      <match target="pattern">
                <test qual="any" name="family">
                        <string>serif</string>
                </test>
                <edit name="family" mode="append" binding="strong">
                        <string>Times New Roman</string>
                </edit>
      </match>

chengxiaomei 发表于 2003-6-12 18:42:59

比如说我桌面上的字体,如果用simsun,英文字母就是缺省的,既不是tahoma也不是Verdana,如果用verdana,那么中文就变成了宋体了
添加了上面的代码好像没什么效果啊

atfa 发表于 2003-6-12 23:20:34

宋体+verdana不就是你想要的吗

chengxiaomei 发表于 2003-6-13 09:16:26

应该算是仿宋体吧,和windows下面的不一样,就是linux缺省的中文字体+verdana
页: [1]
查看完整版本: 我的字体有问题