文字如何绘出(2013-02-01 首发)

系统字体配置、中文显示和输入法问题
回复
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

文字如何绘出(2013-02-01 首发)

#1

帖子 自由建客 » 2013-02-01 17:14

《Linux 字体配置要略(第二版)》总目

[text]更新说明
2013-02-01 首发。[/text]

应用程序给 fontconfig 一张表,其上填有需求说明,表示「我需要这么一款字体」,且称「所望」。注意,仅是壹张。该表有许多项,详见系统手册页 fonts-conf(5) 中「字体属性(Font Properties)」部分,以及下文「fonts-conf 补充说明」部分。在此,一般只用到「lang、family、style、pixelsize(语言、字体名、风格、像素尺寸)」四项。
fontconfig 收到所望表,根据配置处理后,返回给应用程序一叠表,表示「君可以此任用」,且称「所得」。注意,是壹叠,有多张。每张表,描述一款确已安装的字体,格式与所望表相同,但内容要完整得多,其中就有字体所在字库文件路径、渲染方式等。这一叠表便是一串字体,可形象地称为「字体链」。配置字体的绝大部分工作,就在于如何提供合理的字体链。
应用程序每绘一个字符,便对字体链逐个考察,只要所考能够胜任,便用其绘制,不再考察后续字体。所谓胜任,即字体中含有所需字符。若整条链均无可胜任者,则以缺字论。某些程序,并不支持字体链,而只懂看第一款字体,若不可胜任便立即大喊缺字。此类程序已然落伍,应当尽量避免使用。毫无疑问,字体链乃大势之所趋,不支持者无异于寄一人天下太平。
所得表是一叠而非一张,所以各字体可单独配置渲染参数。Qt 程序一般都遵照所得表描述进行渲染,GTK 程序则不然。具体请待下文。
头像
ceclinux
帖子: 308
注册时间: 2013-01-17 2:42
系统: Ubuntu 12.04LTS

Re: 文字如何绘出(2013-02-01 首发)

#2

帖子 ceclinux » 2013-02-01 17:22

:em09
Ubuntu 12.04 LTS
laptop:Acer 4750G CPU:I5-2410
内存:2+2G 硬盘:500+750
http://www.ceclinux.org
头像
k9288k
帖子: 792
注册时间: 2012-02-21 22:27
系统: Ubuntu12.04

Re: 文字如何绘出(2013-02-01 首发)

#3

帖子 k9288k » 2013-02-12 14:41

:em01
惟吾无为
帖子: 42
注册时间: 2012-03-21 20:28
系统: ubuntu 12.04

Re: 文字如何绘出(2013-02-01 首发)

#4

帖子 惟吾无为 » 2013-03-07 17:08

赞!。。。。。。。
conanlcuican
帖子: 69
注册时间: 2007-08-13 10:01

Re: 文字如何绘出(2013-02-01 首发)

#5

帖子 conanlcuican » 2013-08-23 13:18

:em11 赞。写得真好啊。
头像
sevk
帖子: 2060
注册时间: 2007-05-08 16:26
系统: arch
来自: 火星内核某分子内某原子核内
联系:

Re: 文字如何绘出(2013-02-01 首发)

#6

帖子 sevk » 2013-09-16 8:29

Qt 程序一般都遵照所得表描述进行渲染,GTK 程序则不然.

看来字体会是一个隐藏的坑.
笔记本 :
F208S : gentoo
A460P i3G D6 : UBUNTU + WIN7
UN43D1 : UBUNTU + WIN7
1000人超级QQ群 LINUX + WIN : 31465544 或 18210387
回复