LinuxSir.cn,穿越时空的Linuxsir!

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

Fontconfig FAQ

[复制链接]
发表于 2003-3-29 23:04:02 | 显示全部楼层 |阅读模式
问题:作为一个 X11 用户,我有许多位图 Fixed 字体。缺省的fontconfig设置很难挑出某个确定的字体,比如,我喜欢 7x14 字体,但是选择 "Fixed 14" 会得到一个完全不同的字体。

回答:这是一个常见的问题,这里有一个人的解决办法,但它实际上是隐藏了其他所有 X11 字体。 http://archives.mandrakelinux.com/cooker/2002-11/msg01763.php

我目前使用的方法也不好:我修改了 7x14-ISO8859-1.pcf 文件,把它的字体名改成 "Foxed",就能选择到了。

强迫某个字体使用fontconfig的最好办法是什么呢?

问题:我要怎样修改 fonts.conf 才能指定它只对大于 12pt 的字体进行AA处理呢?现在所有尺寸的字都AA了。

回答:在 "</fontconfig>" 上面,加上:

  1.         <match target="pattern">
  2.                 <test name="size" compare="less_eq">
  3.                         <int>12</int>
  4.                 </test>
  5.                 <edit name="antialias" mode="assign">
  6.                         <bool>false</bool>
  7.                 </edit>
  8.         </match>
复制代码

问题:我必须使用某个特定的本地语言字符集,而不是规定的那个,因为用规定的那个会使我的本地字体很难看。有办法没?

NB: 下面的答案我这没有用。 -- EthanBlanton

答案:是的。Fontconfig 试图为你选择正确的字体,不过模棱两可的信息(比如非规范的locale)会使它做出错误的选择。幸运的是,我们能修正这一点。例如,你要使用 ja_JP 作为 LC_CTYPE ,但你的工作环境主要是英语,将下面的 XML 语句放到 fonts.conf 或 .fonts.conf 文件里的 </fontconfig> 标记前,会让英文更清晰,同时日文又很好看:

  1.         <match target="pattern">
  2.                 <test name="lang" qual="all" compare="eq">
  3.                         <string>unset</string>
  4.                 </test>
  5.                 <edit name="lang">
  6.                         <string>en</string>
  7.                         <string>ja</string>
  8.                 </edit>
  9.         </match>
复制代码

对于其他语言,把 <string> 中间的值改一下就行了。
问题:我在编译时出错,怎么办?

回答:下面是简单的安装指导,请严格按顺序进行:

如果你是 root,就不要用 'su -c' 命令,而是 make install.

1) Fontconfig:
cd fontconfg
./configure && make && su -c "make install"
(root 密码)

2) Xrender:
cd ../Xrender
xmkmf -a
make && su -c "make install"
(root 密码)

3) Xft:
cd ../Xft
./configure && make && su -c "make install"
(root 密码)

在作完上面的步骤后,你应该:

su -c "ldconfig"
(root 密码)


如果还有麻烦,请在邮件列表上提出来。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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