ubuntu字体配置

系统字体配置、中文显示和输入法问题
回复
junsuck
帖子: 65
注册时间: 2006-07-14 15:44

ubuntu字体配置

#1

帖子 junsuck » 2008-08-24 20:47

本文使用了STHeiti作为演示,大家还是使用开源字体哟。^.^

1.安装字体

根据/etc/fonts/fonts.conf,默认的字体文件存放在如下几个位置:

代码: 全选

<dir>/usr/share/fonts</dir>
<dir>/usr/share/X11/fonts</dir>
<dir>/usr/local/share/fonts</dir>
<dir>~/.fonts</dir>
先在/usr/share/fonts/truetype目录下创建一个存放中文字体的文件夹zh_CN
然后我这里把STHeiti.ttf字体文件拷贝到/usr/share/fonts/truetype/zh_CN

执行sudo fc-cache -f -v用来刷新字体缓存文件

代码: 全选

sudo fc-cache -f -v

代码: 全选

kyle@linux:~$ fc-list | grep STHeiti
STHeiti:style=Regula
如果返回STHeiti:style=Regula则表示系统已经认识你安装的字体了

2.修改如何让系统自动选择合适的字体

代码: 全选

kyle@linux:/etc/fonts$ ls -la
总用量 40
drwxr-xr-x   4 root root  4096 2008-08-24 00:09 .
drwxr-xr-x 123 root root 12288 2008-08-25 17:23 ..
drwxr-xr-x   2 root root  4096 2008-08-24 18:22 conf.avail
drwxr-xr-x   2 root root  4096 2008-08-24 17:29 conf.d
-rw-r--r--   1 root root  5283 2008-02-29 01:22 fonts.conf
-rw-r--r--   1 root root  6961 2008-02-29 01:22 fonts.dtd
注:字体的配置文件通常都放在/usr/etc/fonts/conf.d目录中,ubuntu中该目录中的文件都链接到了/usr/etc/fonts/conf.avail目录中的文件。

代码: 全选

kyle@linux:/etc/fonts/conf.avail$ less README
00 through 09          Font directories
10 through 19          system rendering defaults (AA, etc)
20 through 29          font rendering options
30 through 39          family substitution
40 through 49          generic identification, map family->generic
50 through 59          alternate config file loading
60 through 69          generic aliases, map generic->family
70 through 79          select font (adjust which fonts are available)
80 through 89          match target="scan" (modify scanned patterns)
90 through 99          font synthesis
该README文件详细说明了存放在/usr/etc/fonts/conf.avail目录中的文件的作用

由于我的locale所zh_CN.UTF-8所以系统使用的所69-language-selector-zh-cn.conf这个文件

代码: 全选

kyle@linux:/etc/fonts/conf.avail$ sudo gedit 69-language-selector-zh-cn.conf
注:在西方国家罗马字体正营中,字体分为两大种类:Sans Serif和Serif,打字机体虽然也属于 Sans Serif,但由于是等宽字体,所以另外独立出 Monospace这一种类,例如在Web中,表示代码时常常要使用等宽字体,在终端中也通常使用该字体。Serif的意思是,在字的笔画开始及結束的地方有额外的装饰,而且笔画的粗细会因直橫的不同而有不同。相反的,Sans Serif则沒有这些额外的装饰,笔画粗细大致差不多。

实际的应用:Serif的字体容易辨认,因此易读性较高。反之Sans Serif则教醒目。像宣传品、海报类,为求醒目,它的短篇的段落也会采用Sans Serif字体。但在书籍、报刊杂志,正文有相当篇幅的情形下,则应采用Serif字体来减轻读者阅读上的负担。^.^

这里是69-language-selector-zh-cn.conf文件中关于serif的字体选择配置

代码: 全选

<match target="pattern">
	<test qual="any" name="family">
		<string>serif</string>
	</test>
	<edit name="family" mode="prepend" binding="strong">
		<string>STHeiti</string>
		<string>AR PL UMing CN</string>
		<string>AR PL ShanHeiSun Uni</string>
		<string>WenQuanYi Bitmap Song</string>
		<string>Bitstream Vera Serif</string>
		<string>DejaVu Serif</string>
		<string>AR PL UKai CN</string>
		<string>AR PL ZenKai Uni</string>
	</edit>
</match>
ubuntu中默认的中文字体是AR PL UMing CN,为了让serif在显示中文的时候首先使用STHeiti,我们在<string>AR PL UMing CN</string>的上面加上<string>STHeiti</string>,意思就所说serif类的字体首先使用STHeiti这个字体来显示,如果该字体不存在,则再用AR PL UMing CN字体显示,如果碰到英文字体,则使用排在后面的Bitstream Vera Serif字体来显示。

同理,再在sans-serif部分的第一行加上<string>STHeiti</string>

在monospace部分,因为大部分终端都使用英文,所以我在<string>Bitstream Vera Sans Mono</string>后面加上<string>STHeiti</string>,这样先使用Bitstream Vera Sans Mono来显示英文,再用STHeiti显示中文了

修改该文件后,保存

最后,注销,再登录,你就可以看到配置好的字体效果了。
附件
Screenshot.png
Screenshot-外观首选项.png
pwc_beyond
帖子: 12
注册时间: 2006-07-23 18:40

#2

帖子 pwc_beyond » 2008-08-27 16:37

:D lz,让我如何不顶你
头像
Evan Reader
帖子: 269
注册时间: 2009-11-03 13:53
来自: 甘肃

Re: ubuntu字体配置

#3

帖子 Evan Reader » 2009-11-04 16:08

讲的很好啊 我试了完全行得通 怎么就没人回帖呢?
Happiness only real when shared.
katrina
帖子: 4
注册时间: 2010-07-21 20:44

Re: ubuntu字体配置

#4

帖子 katrina » 2010-07-28 23:52

我的区域设置是en_US.utf-8,我一直找不到哪个配置文件控制中文字体的选择顺序.你知道吗?
rukal
帖子: 3
注册时间: 2010-10-14 18:02

Re: ubuntu字体配置

#5

帖子 rukal » 2011-01-12 14:14

收藏先,刚装了10.10,应该很快用的上,感谢。 :em11
头像
jqx1990
帖子: 181
注册时间: 2007-02-22 17:07
联系:

Re: ubuntu字体配置

#6

帖子 jqx1990 » 2011-01-18 6:18

ubuntu中默认的中文字体是AR PL UMing CN,为了让serif在显示中文的时候首先使用STHeiti,我们在<string>AR PL UMing CN</string>的上面加上<string>STHeiti</string>,意思就所说serif类的字体首先使用STHeiti这个字体来显示,如果该字体不存在,则再用AR PL UMing CN字体显示,如果碰到英文字体,则使用排在后面的Bitstream Vera Serif字体来显示。
不对吧,Bitstream Vera Serif的字体都包含了英文,怎么可能遇到英文的时候会选择Bitstream Vera Serif呢?(我一直都想这样做,但是根据楼主的排列顺序,不可能会用到Bitstream Vera Serif字体啊)
Lee
Computer Science at Columbia University
KF7NCH


我做的软件https://code.google.com/p/geeky-shutdown/
我开发的NLP工具包https://code.google.com/p/lee-lemmatizer/
跟我一步一步做一个QT Python程序http://forum.ubuntu.org.cn/viewtopic.php?f=162&t=444808
我的简历http://www.linkedin.com/pub/qingxiang-jia/32/4a6/54
usbtopc
帖子: 96
注册时间: 2009-06-30 23:05

Re: ubuntu字体配置

#7

帖子 usbtopc » 2011-01-27 12:55

不错的内容,感谢分享!
裸跑X可能是最后的选择......
目前使用dwm-plus: http://code.google.com/p/dwm-plus/
头像
速腾1994
论坛版主
帖子: 17379
注册时间: 2008-11-01 20:43
系统: Arch+gnome

Re: ubuntu字体配置

#8

帖子 速腾1994 » 2011-12-22 0:05

登记
kang1021980
帖子: 9
注册时间: 2010-11-19 9:46

Re: ubuntu字体配置

#9

帖子 kang1021980 » 2011-12-25 22:12

:em01 把默认字体改得一塌糊涂,靠楼主又改回了。谢谢!
lazily
帖子: 21
注册时间: 2009-03-28 10:13

Re: ubuntu字体配置

#10

帖子 lazily » 2011-12-25 23:37

不错的教学贴
学习了
mu1345
帖子: 5
注册时间: 2013-12-11 16:25
系统: ubuntu

Re: ubuntu字体配置

#11

帖子 mu1345 » 2013-12-23 22:25

:em11
回复