寻找合适的正文字体

### 已编码的汉字一共有多少个?

先看看 Unicode 中对汉字的编码 [1]:

首先是基本位面 (BMP) 中的:

* CJK Unified Ideographs: U+4E00 .. U+9FA5 = 20902 个字符
* CJK Unified Ideographs Extension A: U+3400 .. U+4D85 = 6582 个字符
* CJK Unified Ideographs (4.1): U+9FA6 .. U+9FBB = 22 个字符
* CJK Compatibility Ideographs: U+F900 .. U+FA2D = 302 个字符
* CJK Compatibility Ideographs: U+FA30 .. U+FA6A = 59 个字符
* CJK Compatibility Ideographs: U+FA70 .. U+FAD9 = 106 个字符

以上总计 27973 个字符

下面是位面 2 的:

* CJK Unified Ideographs Extension B:
U+20000 .. U+2A6D6 = 42711 个字符
* CJK Compatibility Supplement:
U+2F800 .. U+2FA1D = 542 个字符

以上总计 71226 个字符,这些是所有已经包括在 Unicode 中的汉字。

* Punct & Radicals: 2E80..U+33FF = 1407 个字符,这些是部首与标点。

以上总计 72633 个字符

也就是说,我们总共能够访问的字符以 7 万左右为上限。

### 选择字体的原则

正文字体,顾名思义,是给文章主要的内容使用的字体,反过来说,它不是标题字体或者美术字体。所以,正文字体的选择自有其原则,我在下面选取的原则是:

1. 美观,包括屏幕显示的美观与打印效果的美观。
2. 包含足够的字符,这个好理解。
3. 符合授权。先不考虑字体是否通过正常的途径得到,至少使用这个字体的过程必须符合字体的授权。

再详细说说怎么叫美观,相对另外两点,这是一个比较主观的概念,可毕竟也有些共识,或者换句话说,字体至少要清晰、可读性强,能够长时间阅读而不疲劳,这也是我判断的标准。

### 字体的选择

我选择的字体主要包括这几类:全文使用的字体,强调用的字体、代替斜体 (或意大利体) 在拉丁字体中的类似地位的字体,和表示一段特殊文本 (比如原文引用、代码) 的字体。这基本上涵盖了正文需要使用的全部字体种类。在 TeX 中,以 CCT 文档类 [2] 为例,常见的设定是,全文使用宋体,强调使用黑体,代替斜体的是楷体,表示代码的是仿宋体,所以我也主要测试这四种字体。

选择的字体是我的机器上已经安装的字体,分别来自 Windows XP、Office 2003、Adobe Reader 和方正 GBK 字库。

### 技术细节

在操作系统、浏览器下的字体显示过于依赖点阵字体,所以这里是不考虑的,那什么算作屏幕显示呢?我测试的是 TeX 文档,使用 dvipdfmx 生成的 pdf,使用 Adobe Reader 7 观看,并打开 CoolType 的效果,所有的测试都是基于同一个 TeX 文档的,你可以在这里下载 (需要 Unicode TFM 文件配合,可以使用 cyperbit 字体的 TFM 或者用 ttf2tfm 工具生成)。打印效果… 应该都不错,但测试起来不大方便,待我有空装上激光打印机先…

怎么判断一个字体包含字符的数量?下面处理的字体有两种,TrueType 和 OpenType (CID),都可以使用 Microsoft 提供的一个工具 查看其包含字形的数量,当然这里包含的字形不仅仅是汉字,也包括拉丁字符等。至于具体某个代码点有没有字,就不是我一个人能够测试得过来的了。

授权信息主要根据上面这个工具得到的 Embedding 数据和 License 数据。事实上下面遇到的 Embedding 就只有两种:Installable 和 Editable,也是最宽松的两种,Editable 的意思是你可以使用这些字体做 pdf,分发生成的 pdf,并允许别人对这些 pdf 作再加工,但你不能直接分发这些字体,也就是最常见的情况;Installable 的意思是允许收到嵌入该字体的电子文档者也能从电子文档中获取并安装该字体 (.. 这种情况很少见)。

### 结果

字体名称 字形数 嵌入授权 来源
方正博雅宋_GBK 10667 Editable 方正字库 [3]
方正兰亭宋_GBK 22026 Editable 同上
方正书宋_GBK 22024 Editable 同上
宋体 (simsun) 22141 Installable Windows XP
华文中宋 25185 Editable M$ Office
AdobeSongStd 29064 Editable Adobe Reader
宋体-方正超大字符集 65531 Editable M$ Office
AdobeMingStd 18965 Editable Adobe Reader
楷体_GB2312 7580 Installable Windows XP
方正楷体_GBK 22024 Editable 方正字库
标楷体 22134 Installable Windows Vista CTP
黑体 (simhei) 22021 Installable Windows XP
方正黑体_GBK 22024 Editable 方正字库
华文细黑 25185 Editable M$ Office
仿宋_GB2312 7580 Installable Windows XP
方正仿宋_GBK 22024 Editable 方正字库
华文仿宋 25185 Editable M$ Office
隶书 (simli) 21992 Installable Windows XP
方正隶书_GBK 22024 Editable 方正字库

### 最后

最后… 当然是截图时间了,不过并非上边每个字体都有截图哦。

CTeX-Fonts 中的 gbksong

方正博雅宋

方正兰亭宋

方正书宋

方正兰亭宋

方正书宋

方正楷体

方正黑体

标楷体

### 结论呢?

哦,好像真的是漏了结论,那便写点我自己的看法吧。

宋体中,博雅宋似乎过扁,中宋、标宋过黑,报宋和宋体 (simsun)、AdobeSongStd 都太淡,方正超大字符集收字最全,但在目前我还没搞定怎么让它访问到 CJK ExtB 那些代码点……,在不加粗的情况下,书宋与兰亭宋为最佳。

明体我没有发言权 🙂

黑体测试得也不多,主要考虑的还是字形的覆盖,所以不少人喜欢的 KozGoPro 字体没有测试,Mac 下用的丽黑也没有测试,华康等繁体的黑体也没有测试。目前的情况看,黑体的效果都不错。(不过用 FrameMaker 生成的 pdf 中,这几种黑体效果都不好,均有杂色,比较奇怪)

楷体中,标楷体的写法不大符合大陆的习惯,还是以方正楷体比较舒服,收录的字也完善。

隶书和仿宋可以任择。

### 参考文献

1. Unicode Consortium. UNICODE HAN DATABASE.
2. 张林波. CCT 的 LaTeX2ε 中文文档类.
3. FounderType. 方正字库.

Author: Jiang Jiang

A software engineer from China, working on some OS for a fruit company. Interested in typography and science fiction.

13 thoughts on “寻找合适的正文字体”

  1. 是台湾政府推广的一种 Traditional Chinese 的说法,理由是 Traditional Chinese 并未增加笔画,所以不应该称作“繁体”,从我的观察而言,台湾人使用“繁体中文”和“正体中文”这两个词的都有,而且说“正体”的有增加的趋势。

    当然,这只是一种说法,和字体本身无关。

  2. 哦,原来如此.
    繁体字的叫法只不过是我们使用简化字以后的相对称呼
    这好像引起了很多台湾同胞的不满,于是搞出一个整体字
    这是偶搜索的结果,呵呵

  3. “正体”这种说法的出现,政治原因多于语言学上的原因,所以其实我是倾向于回避谈这个问题的,大家用自己喜欢用的说法就好 🙂

  4. 比较认同主人的看法,一种字体要好,达到整个版面的灰度适中、均匀是最好的。笔划的写法也要符合习惯。字数更要足。
    我很欣赏方正的GBK字体,上面几个要求设计得比较到位。
    华康的PMingliu字体确实无论打印还是屏幕显示都非常棒,字数也多,只可惜处理简体字时,许多字都不符合大陆的习惯!

    繁体、简体、或正体,我还是喜欢前面二者的称谓。实际上,港台和大陆的繁体写法,还是有很大不同的。港台明体的写法,采用的是一种老式部首的写法,大陆写的繁体,大都采用与手写风格更相近的部首写法。这可以从《现代汉语词典》、《新华字典》前面的新、旧部首的对照表中可知。

  5. 博雅宋确实是扁的,但这样“行气”比较好,阅读的效率更高。

  6. 有谁见过方正字库新标题字?
    包括博雅标宋、兰亭标黑、韵动黑体、粗黑宋四种。它们在方正字库官方网页上都看不到。贴个图来看看最好了。

    方正电子“方正字库新标题字”巡展东北
    2006-5-30

    方正电子新款标题字展示活动在北京和杭州两站成功举办之后,新字体(博雅标宋、兰亭标黑、韵动黑体、粗黑宋)得到了两个地区市场业界专家的一致认同。与会者认为其“不但能够提高报纸版面质量,而且更加适合于读者阅读,值得广泛推广。”无论从审美的角度还是字体的实用性方面都非常有价值。

  7. 不过,博雅宋_GBK的字数也不完整,远没有达到20000多字。
    主人上面贴出来的博雅宋的示意图中,就有一些字无法显示,有空白的地方!

Leave a Reply

Your email address will not be published. Required fields are marked *