https://linux.cn/article-11974-1.htmlhtml
谷歌字体和开放字体库中的免费 Web 字体已经改变了游戏规则,但仅在有限的范围内。linux
毫无疑问,近些年来互联网的面貌已经被开源字体所改变。早在 2010 年以前,你在 Web 浏览器上几乎只能看到微软制做的一般“Web 安全”的核心字体。但这一年(2010)正好是好几轮技术革新开始的见证之年:Web 开放字体格式Web Open Font Format(WOFF)的引入为经过 HTTP 有效地传输字体文件提供了一个开放的标准,以及像谷歌字体和开放字体库Open Font Library这样的 Web 字体服务的推出,使得 Web 内容发布者能够在开源许可证之下无偿使用海量的字体库。git
这些事件对 Web 排版的积极影响再夸大都不过度。可是要将 Web 开放字体的成功与整个开源排版等同起来,并获得结论——挑战已经远离了咱们,困难悉数被解决了——却很容易。然而事实并不是如此,若是你很关注字体,那么好消息是你有好多机会参与到对这些字体的改进工做当中去。github
对新手来讲,相当重要的是必需要意识到谷歌字体和开放字体库提供了专用的服务(为网页提供字体),而没有为其余使用状况制定字体解决方案。这不是服务方面的缺点,这只是意味着咱们必须去开发其它的解决方案。web
须要解决的问题还很是多。可能最明显的例子就是给 Linux 桌面计算机的其余软件安装字体所遇到的尴尬状况。你能够经过任何一种服务下载任何一种 Web 字体,可是你获得的只是一个最普通的压缩包文件,里面有一些 TTF 或 OTF 二进制文件和一个普通文本文件的许可证。接下来会发生什么完彻底全须要你去猜。小程序
大部分用户很快学会了“正确”的步骤就是手动地复制这些字体二进制文件到他们硬盘里几个特殊文件夹里的某一个里。可是这样作只能使这个文件对操做系统可见。它并不能为用户体验带来什么提高。再强调一遍,这不是 Web 字体服务的缺陷,相反它佐证了对于关于服务到哪里中止和须要在其余方面作更多工做的观点。浏览器
在用户视角来讲,一个巨大的提高可能就是在“只是下载”这个阶段,操做系统或者桌面环境变得更智能。系统或桌面环境不只会把字体文件安装到正确的位置上,更重要的是,当用户选择要在一个项目中使用的字体时,它会本身添加用户所须要的重要的元数据。安全
这些附加信息包含的内容与它如何呈现给用户与另外一个挑战有关:与其它操做系统相比,在 Linux 环境管理一个字体库显然不那么使人满意。字体管理器老是时不时的出现一下(例如 GTK+ 字体管理器,这是最近的一个例子),可是它们不多变得流行起来。我一直在思考一大堆这些软件让人失望的方面。一个核心的缘由是它们把本身局限于只展现内嵌在二进制字体文件内的信息:基本字符集的覆盖、粗细/宽度和斜率的设定,内置的许可证和版权说明等等。字体
可是除了这些内嵌数据中的内容,在选择字体的过程当中还涉及不少决策。严肃的字体用户,像信息设计者、杂志文章做者,或者书籍美工设计者,他们的字体选择是根据每一份文件的要求和需求作出的。这固然包含了许可证信息,但它还包含了更多,像关于设计师和厂商的信息、潮流风格的趋势,或者字体在使用中的细节。google
举个例子,若是你的文档包含了英语和阿拉伯文,你多半想要拉丁文和阿拉伯文的字体由同时熟悉这两种字母系统script的设计师所设计。不然,你将浪费一大堆时间来微调字体大小和行间距来使两种字母系统良好地结合在一块儿。你可能从经验中学到,某些设计师或字体厂商比其余人更善于多种字母系统设计。或许和你职业相关的是今天的时尚杂志几乎无一例外的采用 “Didone”风格的字体,“Didone”是指一种两百多年前最早被 Firmin Didot 和 Giambattista Bodoni 设计出来的超高反差的字体风格。这种字体刚好就是如今的潮流。
可是像 Didone、Didot 或 Bodoni 这些术语都不可能会出如今二进制文件的内置数据当中,你也不容易判断拉丁文和阿拉伯文是否相得益彰或其它关于字体的历史背景。这些信息有可能出如今补充的材料中,相似某种字形样本或字体文件中,若是这些东西存在的话。
字形样本specimen是一份设计好的文档(通常是 PDF),它展现了这种字体的使用状况,并且包括了背景信息。字形样本常常在挑选字体时充当市场营销和外观样例的双重角色。一份精心设计的样本展现了字体在实际应用中的状况和在自动生成的字符表中所不能体现的风格。字形样本文件也有可能包含了一些其余重要信息,好比怎样激活字体的 OpenType 特性、提供的数学表达式或古体字,或者它在支持的多种语言上的风格变化。在字体管理应用程序中向用户提供此类材料,对于帮助用户找到适合其项目需求的字体将大有帮助。
固然,若是咱们但愿一个字体管理软件可以处理文件和样本问题,咱们也必须仔细观察一下各类发行版提供的字体包所随附的内容。Linux 的用户刚开始只有自动安装的那几种字体,而且发行版存储库提供的包是大部分用户除了下载通用的压缩包档案以外的惟一字体来源。这些包每每很是的“简陋”。商业字体总的来讲都包含了样本、文档,还有其余的支持项目,然而开源字体每每没有这些配套文件。
也有一些优秀的开放字体提供了高质量的样本和文档(例如 SIL Gentium 和 Bungee 是两种差别明显可是都有效的方案),可是它们几乎不涉足下游的打包工做链。咱们显然能够作的更好一些。
要在系统的字体交互方面提供更丰富的用户体验上面还存在一些技术问题。一方面,AppStream 的元数据标准定义了一些字体文件特有的参数,可是到如今为止,这些参数没有包含样本、设计师/厂商和其余相关细节的任何信息。另一个例子,SPDX(软件包数据交换Software Package Data Exchange)格式也没有包含太多用于分发字体的软件许可证(及许可证变体)。
最后,就像任何一个唱片爱好者都会告诉你的,一个不容许你编辑和完善你的 MP3 曲库中的 ID3 信息的音乐播放器很快就会变得使人失望(LCTT 译注:ID3 信息是 MP3 文件头部的元信息,用于存储歌曲信息)。你想要处理标签里的错误、想要添加注释和专辑封面之类的信息,本质上,这就是完善你的音乐库。一样,你可能也想要让你的本地字体库也保持在一个方便使用的状态。
可是改动字体文件的内置数据一直有所忌讳,由于字体每每是被内置或附加到其余文件里的。若是你随意改变了字体二进制文件中的字段,而后将其与你的演示文稿一块儿从新分发,那么下载这些演示文稿的任何人最终都会获得错误的元数据,但这个错误不是他们本身形成的。因此任何一个要改善字体管理体验的人都要想明白如何从策略上解决对内置或外置的字体元数据的重复修改。
除了技术角度以外,丰富的字体管理经验也是一项设计挑战。就像我在前面说的同样,有几种开放字体也带了良好的样本和精心编写的文档。可是更多的字体包这二者都没有,还有大量的更老的字体包已经没有人维护了。这极可能意味着大部分开放字体包想要得到样本和证实文件的惟一办法就是让社区去建立它们。
也许这是一个很高的要求。可是开源设计社区如今比以往任什么时候候都要庞大,它是整个自由开源软件运动中的一个高度活跃的组成部分。因此谁知道呢,也许明年这个时候会发现,在 Linux 桌面系统查找、下载和使用字体会变成一种彻底不一样的体验。
在这一连串关于现代 Linux 用户的文字设计上的挑战的思考中包含了打包、文档设计,甚至有可能须要在桌面环境加入很多新的软件部分。此外还有其余一系列的东西也须要考虑。其共通性就是在 Web 字体服务不可及的地方,事情就会变得更加困难。
从个人视角来看,最好的消息是如今比起之前有更多的人对这个话题感兴趣。我认为咱们要感谢像谷歌字体和开放字体库这样的 Web 字体服务巨头让开放字体获得了更高的关注。
via: https://opensource.com/article/18/3/webfonts
做者:Nathan Willis 译者:Fisherman110 校对:wxy
订阅“Linux 中国”官方小程序来查看