概述
关于电子书的字体选择,其实是一个很庞大的命题,讲深了涉及字体设计,这里不扯那么远,主要是从电子书观感的角度来列举各种字体在阅读器中的特性。
一些基础概念
首先需要了解的是字体的一些基础知识。不论是什么软件,要显示文字,需要先读取文字的unicode码,然后在字体文件里面找到这个unicode对应的字形,再把字形打印在屏幕上。如果字体文件没有这个字的unicode码,则软件就会请求操作系统提供一个默认的字库,再在这个字库里面去找unicode。一般来说,操作系统都会设定一个较全的字体文件或几个字体文件(对应不同语言)作为字库,避免软件显示不了字形(如果不提供默认字库,严重情况下软件可能造成内存泄漏)。我们把这种软件找不到自带字体的unicode而请求系统默认字库的行为叫做fallback(android以前的字体名就叫sans fallback)。
自从iphone开始视网膜屏幕时代以来,字体显示可以说是开启了一个新时代,以前pc显示屏上都是一个像素点显示一个字形像素,但视网膜上则是四个像素点来显示一个字形像素,因此许多必须大字号才好看的字体焕发了新生,由于可以用更多的像素来显示字体,小号字体也可以显示得很平滑。在视网膜之前,屏幕上打印的字体和打印机打出的字体有着很大的不同,屏幕上因为像素有限,显示的小号字体只能显示笔画的骨干,锯齿很严重;而印刷出来的字体由于墨水颗粒极其微小,没有像素的限制,所以小号字体也可以显示得很平滑。简而言之,视网膜的显示效果基本上就跟印刷体是一样的。
另外与字体显示相关的就是渲染引擎。目前字体渲染主要是两个流派,windows的cleartype和adobe的pdf标准。windows主要是为了低分辨率屏幕下锐利的显示效果,字体的笔画都是顺着像素点来的,所以显得非常锐利,而pdf主要是为了与印刷效果完全一致。后来mac采用了pdf的渲染标准,linux又搞了个freetype来模仿mac的渲染。安卓的字体显示也是一样的。从最终效果来看,在低分屏上windows显示字体更清晰,在高分屏上pdf标准显示更舒服。
几个字体大系
按西方标准来分的话,字体基本上就是衬线(serif)和非衬线(sans serif)两类。所谓衬线就是在笔画起止位置上加上类似笔势的装饰。衬线的出现有其历史原因,但从显示效果来看,同样的字号,衬线字体由于有这些小装饰,所以显示的字形都会比无衬线字体要小一些,在大段文字铺排的情况下,衬线体更容易识别,小字号的情况下,单个无衬线字体更容易识别。
西文字体的选择非常多,这里简单举几个例子,主要说一下中文字体的特性。
中易宋体
这是windowsxp以前的默认衬线字体,由于windows做过特殊处理(小字号嵌入了点阵),在低分屏下只有它能够非常锐利清晰的显示出来,windows自带的别的中文字体都不行。但是把它放到mac或linux下就现出原形了(linux可以修改配置来调出点阵)。中易宋体在windows系统下是最适合阅读的正文字体。当然,换个平台就没戏了。
另外值得一提的是宋体的字库是最多的,对于那些非常生僻的字来说,可能只有宋体有相关字形。
与其同类的还有仿宋体。仿宋的字形介于宋体和楷体之间,它的衬线也在笔画首尾,笔画本身也是等宽,但笔画大部分是斜着走的,所以更适合高分屏。
中易黑体
这是windows默认的黑体,没什么太多特色,就是典型非衬线字体,字形字重等都没有什么优势。
另外非衬线字体也可以分为等宽和非等宽两类,不过这个区分标准对于拉丁字母系颇有意义,但对于中文区分并不明显,因为中文本身就是方块字。等宽字体主要是用于编程,所以衬线字体没有等宽字体之分。
与其同类的还有等线、幼圆体等等。但windows默认的幼圆体英文却是难看的衬线字体,非常奇怪。
中易楷体
同上,默认的楷体,楷体与宋体的区别主要是宋体的衬线在笔画首尾,笔画本身是等宽的;而楷体从书法演变过来,笔画本身就是有粗细的。同样的字号情况下,楷体字形都会比别的字体小一圈。
与其同类的书法演变字体还有隶书、行楷等等。
多看自带的字体
多看默认的字体包有下面几个:
方正书宋
多看出版物默认的正文字体,字形比中易宋体的笔画要粗一些,从视觉效果来看是非常适于长时间阅读的字体。而中易宋体由于太细,看起来发虚。
书宋在任何类型的书中都可以用,当然编程语言不适合用书宋来呈现。
但是书宋主要还是用于正文字体,用于标题或者装饰都不太好看。在多看中所有内置字体的字库都是GBK的,也就是说扩展B区的生僻字是没有的。
方正兰亭黑
多看网文默认的正文字体。兰亭黑是微软雅黑的调整升级,比起中易黑体来,笔画更均衡,中宫更宽。因此也很适合于长时间阅读。中易黑体看久了就感觉缩肩驼背的看着不舒服。
兰亭黑在任何类型的书中都可以用,不过古籍类一般不用。
兰亭黑作为正文字体或者作为标题装饰都很适合。虽然兰亭黑也是GBK的字库,但miui系统字体也是小米兰亭黑,这个字库包含了扩展B区的字库。所以书内如果存在B区的生僻字,多看会fallback到系统的小米兰亭黑。如果正文就是兰亭黑,fallback你看不出什么区别。
方正仿宋
这个仿宋体与中易的比起来,整体字形略微瘦长,尤其是英文部分。仿宋的字形笔画比较细,有人也很喜欢用它作为正文字体来阅读。不过超细字体在阳光直射的情况下会降低辨识度,即使是阳光屏也是一样。
由于仿宋体偏细的特性,主要适合于序言、后记这种相对独立的小篇幅章节上,正文则用书宋等粗细适中的字体。另外,仿宋不光是字形看起来小,同字号的情况下比其它字体都会小一点(大概0.9倍的样子),因此用仿宋排版大段文字,整体会紧凑一些(每页能显示更多行字)。
方正兰亭刊黑
正如仿宋是宋体的细体(其实还有斜体变化)版本,刊黑就是兰亭黑的细黑版本,同样适合于长时间正文阅读,当然细体的缺点也是一样的。
刊黑类似仿宋的适用范围,但由于无衬线字体的小字号可识别性高,使用范围更广泛一些。
方正新楷体
这个楷体与中易的楷体区别不大,从字形上来看,比同字号的其它字体显示都要小一些。新楷体采用的英文衬线字体比中易字体好看得多,不过在显示特殊符号方面可能不如书宋等正文字体。一般楷体用于显示书信、引文内容,作为标题的情况较少,主要是因为字形太小又中规中矩,作为标题的表现力乏善可陈。新楷体与仿宋一样,字号大概是0.9倍显示。
方正小标宋
标宋有多个字号,这个小标宋可以看作是书宋的笔画加粗版。不光是单纯的笔画粗细,连衬线装饰也是加强了的。因此本字体不适合用于正文,看久了会累。
相反,本字体非常适合作为章节或分卷的大标题,即使放大几倍,字形也是非常饱满的。
方正中等线
多看最初自带字体包没有包含这个字体,从4.x版开始加入(office2016也开始用作默认字体,之前都是中易宋体),但实际上本字体使用的情况不多,一来它与黑体构造差不多,二来与兰亭黑相比中宫太局促(也就是之前说的缩肩驼背感),所以基本上没啥用。
Gentium Book Basic(Palatino)
这个是多看字体包中默认的衬线英文字体,用来搭配书宋体其实是天作之合。为什么这样说?因为书宋的英文部分并不完善,上图中可以看到书宋默认的英文排列所占宽度是不均匀的,尤其是有辅音的拉丁字母,宽度比英文字母要宽得多。我们再来看看其它字体的显示情况。
可以看到全中文时,辅音拉丁字母基本上都是宽度不均或fallback到默认的书宋英文字体,只有Palatino能完美呈现。但是这个字体的缺点在于人名连字符非常窄,比起书宋的全宽连字符来,简直是要逼死强迫症。
多看官方的解决办法就是遇到这种拉丁字母统一设置本字体,维护起来其实很麻烦。
另外本字体不包含西里尔字母(俄文字母),俄文字母必须调用DK-CODE专用符号等宽字体才行。
Iconsolata
这个是多看字体包中默认的无衬线英文字体,本来它也是一款很有名的编程用等宽字体,一般拿它配合兰亭黑或刊黑小字号来显示编程语言或者版权声明等文本。
掌阅自带的字体
掌阅6.x之前的版本自带了汉仪的一系列字体,默认是汉仪旗黑,但6.x以后换成了方正的字体,但是跟多看有一点点区别。
方正悠黑(细/中/粗)
悠黑属于兰亭黑和雅黑的改进版本,实际上有11个字号可选,这里选择了三种有代表的字号,用途与兰亭黑差不多。
方正新书宋
这个字体是书宋的改进版本,字形比书宋要细,字库也全一些。但个人感觉还是书宋看起来比较舒服,这个字体看起来有点发虚。
方正新楷体/仿宋/标宋
与多看自带的差不多。
方正喵呜
少女风的可爱字体,与掌阅的网文小言定位很搭,作为小言的正文字体也未尝不可。
方正隶变
隶变体之于隶书类似仿宋之于宋体,笔画的倾斜更为明显,适合用于古籍的标题,作为正文字体还是差了点舒适性。
方正准圆
圆体实际上跟黑体差不多,但是作为正文的时候笔画更柔和一些。
Office自带的字体
安装中文Office都会安装一堆中文字体,简单罗列在下面:
华文中宋/仿宋/宋体
对应标宋/仿宋/书宋,适用范围也差不多。字形的喜好还是看个人。
华文彩云/琥珀
这两个美术字体其实也是无衬线字体,而且一阴一阳,主要作为标题装饰,相信没人会用作正文。
华文楷体/行楷/隶书/新魏
都属于书法类字体,行楷看起来很酷炫,实际上用的机会不多,因为辨识度和美观个性都是中不溜。新魏比楷体更粗一些,但是它的英文部分却是类似comic sans的手写无衬线体,非常不搭调。
华文细黑
比刊黑要粗,比兰亭黑要细,跟中等线差不多,但是字体没什么特色。
方正姚体/舒体
这是方正系的两个字体,舒体非常有书法体的风格,比行楷更具特色一些,但适用范围远不如姚体。
姚体是类似瘦长型宋体的衬线字体,广泛用于广告和平面设计中,主要是它的笔画粗细适中,而且瘦长字形在屏幕宽度有限的情况下可以容纳更多的文字。对于手机来说,瘦长型字体是经常需要考虑的备选字体之一。