QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 922|回复: 2

本人对LINUX下字体的理解

[复制链接]
发表于 2004-12-1 10:25:04 | 显示全部楼层 |阅读模式
本人对LINUX下字体的理解,不当之处,请大家斧正,谢谢。

1.字体的查找匹配方式

  Linux下字体查找匹配有2种方式,一种是fonts.dir和fonts.scale。可以用ttmkfdir来生成这2个文件。
  并将新增字体的目录配置在/etc/X11/XF86Config-4里就可以了。举例说明:
  Section "Files"
  #新增字体路径/usr/X11R6/lib/X11/fonts/TrueType
                          FontPath   "/usr/X11R6/lib/X11/fonts/TrueType"
                         
  常用的指令有xset -q(查看字体配置),xlsfonts(列出所有可用字体),xfontsel(以图形界面显示所有字体)
  xset fp rehash(使新增的字体生效)等。
  
  另一种是FontConfig方式,将字体放入目录,并在fonts.conf里添加该字体路径,即可以使用新增的字体。
  举例说明:
  <!-- 新增字体路径/usr/X11R6/lib/X11/fonts/TrueType -->
  <dir>/usr/X11R6/lib/X11/fonts/TrueType</dir>
  
  并可以在fonts.conf里配置使用字体的属性
  常用的指令有fc-list(列出所有字体),fc-cache(使新增的字体生效)
  
  具体的fonts.dir和fonts.conf的配置方法我在这里暂不说明。
  
2.字体的显示方式

  当程序找到匹配的字体后,要在屏幕上把字体画出来,也有2种方式。一种是X11核心字体系统(如xtt或freeftype等),
  配置文件是fonts.dir,主要是GTK1程序(如xmms)使用。它们使用的字体引擎是freetype2(xtt使用的是freetype1)。
  另外一种是Xft,配置文件是fonts.conf。现在大部分程序如GTK2和QT等都是使用的这种方式。
  Xft会看情况而决定要不要使用X11核心字体系统或XRender来画字。使用的字体引擎是freetype2

3.应用程序使用xft的配置
  对于xterm,使用 "-fa" 的命令行选项就可以使用Xft: xterm -fa "Courier"
  对GTK+ 2.0(GNOME 2程序)程序来说,把`GDK_USE_XFT'设为 1 即可:$ export GDK_USE_XFT=1
  GTK+ 2.2 缺省即使用 Xft 。
  对KDE程序来说,应在KDE的控制中心里打开字体面板,选择"使用字体平滑"。
  
4.xfs字体服务器

  这个是Redhat提供的字体服务器,如果在/etc/X11/XF86Config-4里看到有"FontPath unix/:7100"的
  配置,表明使用了字体服务器来提供字体。xfs服务的默认端口是7100。xfs默认的配置是不对远端开放的。
  这个可以参看man xfs就知道了,默认服务参数是xfs -droppriv -daemon。
  要在Windows下的X终端(例如xmanager)里使用xfs提供的字体,就必须修改xfs的配置文件:/etc/X11/fs/config,
  将最后一行no-listen = tcp注释掉(#no-listen = tcp), 然后停掉xfs服务:service xfs stop,
  重启服务xfs -daemon。这时在xmanager里配置xfs字体服务器的IP和端口,
  就可以使用linux上的字体了(另外说一句,xmanager对中文的支持还可以,但是为了用上simsun,
  就必须使用到这个xfs字体服务器了)
  xfs字体服务器也是使用的fonts.dir和fonts.scale。
发表于 2004-12-2 21:45:14 | 显示全部楼层
很不错,收藏.
回复

使用道具 举报

发表于 2004-12-3 20:49:18 | 显示全部楼层
不错。不过单机使用没必要用xfs
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-24 03:05 , Processed in 0.044364 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

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