http://www.ad518.com/article/2017/11/12536
我们将为大家介绍Glyphs最受人瞩目的一项功能:智能母件(Smart Component)
字体是大家每天都在接触的东西,却很少有人会去想一套字体是如何产生的这个问题。常见的中文字库主要有国标GB码、GBK码、港台BIG-5码这三种编码标准,简单的说,GB标准收录了6763个汉字,GBK标准收录了21003个汉字,BIG-5标准收录了13060个汉字。所以,要制作一套中文字库,至少需要设计6763个汉字,这还不包括英文字母和标点符号,是不是感觉任务很艰巨?
巨大的工作量使得很多人对中文字库设计望而却步,而字体设计师们却花着大量的时间在一个字一个字的造字。当然也有一些程序员和工程师们一直在研究如何利用电子技术提高做字效率,实现自动化。
中文字库设计,花时间最多的一个工作内容就是拼字。当我们用几十、几百个字确定了整套字库的风格和各种细节时,我们就要开始扩充字数了,也就是按照编码标准把收录的字全部做出来,这时我们就需要从基础字中提取笔画和部件,进行拼字。
汉字主要可以分为两类,独体字和合体字,独体字只包含一个部件,而合体字包含多个部件。有些部件会经常用到,比如部首,另外还有些部件也常会重复出现,比如声旁、形旁。
在拼字过程中需要经常调用这些常用的部件,由于每个字的构成都有差别,因此在调用部件后都还是需要再做细节的调整,过去我们采用的都是复制粘贴部件,然后手动调整细节的方式,而今天要讲的这个智能母件,就为我们提供了一种相对自动化的操作,节省了很多时间。
上图为禅宋细体的智能母件示范
如上图,将撇设置为智能母件后,我们可以为其设置长短、粗细等属性,这样再去做调整就会方便许多。
上图为禅宋细体的智能母件示范
将部首设置为智能母件后,在调用部首适配相应汉字时就变得非常容易操作。如上图“木字旁”的智能母件,只需要一个滑杆操作,我们就可以同时调整四个笔画,非常方便。
通过上面两个举例我们可以看到,第一个智能母件有两轴变化,粗细和长短,第二个智能母件只有一轴宽窄的变化。事实上我们可以根据自己的需要设定一轴或多轴变化。其实原理很简单,我们只需要为部件做出属性两个极值的形态,就可以通过计算生成中间的变化过程。简单说,比如要设置粗细变化,只要做出最细和最粗的,就可以实现;要设置粗细和长短两轴变化,那就做一个最短的(可最粗可最细),一个最长的,一个最细(粗)的,只要做出的三个形态包含了四个极值中的任意三个,就可以实现两轴变化。以此类推。
下面我就以禅宋细体的撇为例,讲解如何建立两轴变化的智能母件。
新建字形首先,点击菜单栏-字形-新建字形(Option+Shift+Command+N)或者点击字形窗口左下角的加号键新建一个字形,然后打开这个新字形,将宽度改为1000(你的字体的字身框宽度)。
建立智能母件将撇(你的部件)复制粘贴到这个新字形中(我这里选择的是最粗最短的撇),然后选择整个路径并右击,选择将选取的对象转为母件,这时会弹出一个窗口让你为这个部件命名,智能母件有固定前缀,因此我们需要将其命名为_part.pie(_part.部件名)。
设置属性点击图层栏下方的Copy键复制一个图层,双击图层将其命名为chang,然后将撇(你的部件)调整为最长的状态,再次点击Copy键复制一个图层,双击图层将其命名为xi,然后将撇调整为最细的状态。
在空白处右击,选择显示智能字形设定选项,点击属性标签左下角的加号键新建一个属性,命名为chang/duan,设置限制为0到100(-100到100也行),再新建一个属性,命名为cu/xi,设置限制为0到100,然后在图层标签中为每个图层选择相应的属性值,点击好,智能母件就设置好了。
编辑字形时在空白处右击选择新增母件(Shift+Command+C)在弹出的窗口中输入智能母件名称,选择后点击选取即可调用母件,在智能母件选中的状态下右击任意位置选择显示智能母件设定(Option+Command+I)即可调出智能母件设定选项,进行属性参数调整。调整到满意的形态后你可以右击智能母件选择释放组件将智能母件打散(相当于Ai中的扩展),进行更细微的调整,也可以选择不释放,这样如果对智能母件进行修改,那么调用该母件的字形都会发生相应的变化。
注意:在智能母件设置完成后需要删除新建的新字形,否则输出字库时会报错。调整部件各个极值形态时要保持节点数一致,路径方向也要保持统一。
智能母件是一个很棒的功能,它不仅帮我们节省了调整字形的时间,也使查找部件变的非常快捷,同时也会使整个字库的形态更加统一化,真是字体设计师的好帮手。