古文字字体文件制作的模式探索

2022-04-13 13:03桂舒婷向欣雨赵黄一骄
文化产业 2022年8期
关键词:字库古文字字符

桂舒婷 向欣雨 赵黄一骄

汉字是中华民族文化的结晶,是五千年文化得以保存至今的重要载体。随着传统文化的复兴,越来越多的人将目光投向古文字文化,人们对古文献的电子阅读需求也越来越大。伴随古籍复兴、现代信息技术的长足发展,古文字数字化欣欣向荣,中文字符集也逐步添加了大量繁体字和生僻字。一些研究者更是根据出土文献,制作出了许多高质量古文字字库,也提出一些宏观的古文字数字化建议。然而,其花费大量心力制作的数字化产品,因不能及时更新换代、检索系统复杂等原因几乎绝版于当世。而对于微观层面的文史学习研究者和爱好者来说,生僻字和古文字的输入和显示难题依然存在。大多时候他们还是只能以图片来代替那些字符。因此,将字库设计和修改的时间和经济成本降到最低,才能让不占有出土资源和先进技术的文字研究爱好者也能享受到古籍数字化的时代红利。

字库,即电子文字字体集合库,又可称为字符集,是文献数字化的支撑性材料之一。其在计算机中以字体文件的形式储存,规定着机内文字显示。不同字体文件在计算机中显示为不同的字形,可表现为同一字符宋体和楷体的形体差异。我们如果将甲骨文、金文等古文字字形与隶定字字码相对应,输入隶定字便可在计算机上显示出古文字字形。针对日常学习研究中往往只针对某篇古文献、某类或某个古文字的现象,探索出一套灵活的字体文件制作模式,为解决古文字字形数字化难题略尽绵力。

相关研究现状

我们将目前官方已经完成数字化的字符称为通用字符,生活中常见的通用字库有宋体方正超大字库、ASCII字库等。相对的是一些非通用的、面向特殊字形及用途的字库,即非通用字库。

我国非通用字库可分为少数民族文字库和汉字字库两大类。少数民族文字非通用字库有西夏文(柳长青2010)、古彝文(陈顺强2009)等象形文字字库,有蒙古文、藏文等拼音文字字库,也有的是对没有文字只有语言的少数民族进行的拼音文字造字。汉字非通用字库包括古今文字两种:面向今文字的主要是一些传世典籍的数字化,如,中药学专业词汇中的生僻字输入(朱传钧2004)、《真本千方金》俗字研究(孔谦2019);面向古文字的主要是大量出土古文献的数字化,如下文提到的众多古文字字形检索系统。

由出土古文献材料产出的资料库,是古籍数字化的基础。近十年来研究中文字库建设的成果较少,古文字字库多作为查询系统的一部分,且十分注重古文字字形收集的全面性、准确性及与隶定字的复杂关系。如网页版的香港汉达文库中的古文字数据库,其来源于大量出土的甲骨卜辞和竹简绢帛,上面收录了大量古文字。中国台湾“中央研究院”汉字构型资料库、日本文字镜研究所的“今昔文字镜”也在古文字字形回溯原文献上做出了很大成果。在我国,古文字处理系统成果较突出的是华东师范大学(2003)研制的《商周金文数字化处理系统》和《戰国楚文字数字化处理系统》,均可实现对大量文献本体字的检索,但缺点是需要掌握其设计的特殊输入法,且只能在指定程序上查看。随着技术的换代、考古的突破以及古文字考释上的发展,系统不适配的缺点也逐渐凸显,已难以满足古文字在计算机上的使用需求。以实用闻名,传播较广的是北师大说文小篆字库(1995),其按《说文解字》小篆顺序排列字符,能直接安装在计算机上运用,除了少数小篆字形,大多能通过现有输入法在电脑上显示。该字库的成功虽说离不开说文小篆自身的优势,但也能为我们自主设计灵活实用的字库产生启示。

古文字字体文件的制作

技术基础——字符编码

编码问题是计算机识别和显示文字的关键要素。对字符进行编码是使字符能够在计算机中存储和识别的一种手段。ASCII码,是计算机最早也是目前最通用的编码标准。计算机中的字符编码具有唯一性,即字符集中的字符只有唯一的编码数字。

1980年我国发布GB2312-80字符集,中文自此打破西方垄断进入计算机。GB2312有7573字符,包括6763个简体汉字字符,但无法处理繁体字和罕见字。1983年中国台湾发布BIG5繁体字字符集。1995年我国又发布GBK,对GB2312字符集进行扩展,将BIG5字符集的13060个繁体汉字纳入其中,共计22014字符。

随着经济的发展,各国交流愈加紧密。为了使各国的字符集能在同一台电脑上使用,Unicode联盟机构设计出了Unicode编码标准。从1991年Unicode1.1到2021年的Unicode14.0,Unicode不断扩大其字符范围。因其“一字一码”和“拥有几近无尽编码码位”的特点,Unicode还被称为“单一码”“万国码”。将Unicode编码作为古文字字库的编码标准,原因有二。一方面,古文字字库必须使用标准字符集,这是字库成果得到国际认可的重要前提。Unicode编码只定义字符不定义字形,为建立中文古文字字库提供了技术上的可能。另一方面,Unicode编码有17个平面,各个国家常用的字符仅占用第0号平面的部分码位。其私人使用区(Private Use Area)拥有13万多的字符码位可供用户按需为集外字符分配,这为建立可伸缩的古文字字库创造了空间上的可能。

古文字字体文件制作模式

市面上能够编辑字形的软件很多,我们选择FontCreator来设计古文字字体文件。首先是因为该软件采用Unicode字符编码标准,其次通过该软件可修改字符编码对应的字符字形,以实现字符映射的自定义。在导入字形图像后,软件可利用直线和二次B样条曲线拟合算法,将其点阵图形抽成为十分接近原稿的字形曲线轮廓。简单编辑字形细节和调整字形位置后,即可直接安装到Windows系统上使用。

以下,我们将基于FontCreator11.5专业版的字体文件制作过程进行简要描述:

1.选取字形模板,确定字符码位

将古文字材料通过技术手段保存为数字图像格式(如PNG格式等)并备用之前,我们还应关注所选取的古文字材料的“还原性”问题。手工摹写的古文字字汇远没有原始拓片上的字形还原度高,通过扫描原始拓片,将其作为字模是古文字字库字形准确性的前提。

在新建字体文件前,可将各个古文字对应的码位进行集中记录,字形图像也应按照相应顺序进行储存。

2.设置字形编辑环境

第一步:“新建”造字项目,命名字体文件,规定字体样式,设置字形轮廓首选格式(选择TrueType字体的二次曲线)。

第二步:设置字形设计的环境

①设置字符示例。打开工具栏中的“视图”选项,勾选上“在空字形中显示样本”,将“单元中字体”设置为“微软雅黑UI”。本步骤并非必要,只是为了提高造字中必要字符的映射准确。

②设置辅助线,限定字符大小及区间范围。打开“工具栏”中的辅助线选项,设置显示辅助线与否、辅助线虚实颜色及辅助线类型位置。我们通常设定字符范围为(2048*2048单位),新建两条辅助线:水平Y=2048,垂直X=2048。

在利用FontCreator验证程序验证字体文件或者安装字体文件预览时,如发现多个字符叠在一起,或者有“剃头字”“剃尾字”的存在,这是因为字符间距没有设计好,需要重新设置字形环境。

3.导入字形模板图像,编辑字形

点击插入字符,给字体文件添加指定的字符码位。这里有添加Unicode集内码位和集外码位两种情况。

添加集内码位,即该古文字字形的隶定字存在于Unicode字符集内。如,在“查找字符”中输入“犭”,点击“下一步”,便可显示“犭”所在的Unicode区块及其字符编码“$72AD”。点击“添加”,即可添加该码位到字体文件。

添加集外码位,即该古文字字形的隶定字不存在于Unicode字符集内或并无隶定字。这种情况下,就要从Unicode私用区内选取码位。具体操作是:左侧Unicode导航窗口→PUA→添加字符/补充完整字符集。

添加好字符码位后,则对该码位进行自定义字形映射。进入字形概述窗口,右键选择“插入图像”,FontCreator能够自动将源图像转化为曲线轮廓。这里有几个值需要随源图片文件的分辨率进行调整:图像规格、阀值、平滑滤波、导入模式等。导入成功后,在字形编辑窗口根据辅助线调整字形细节和位置。

4.安装和使用字体文件

在造字工程完成之前,可将项目暂存为fcp文件。全部完成后,必须先导出“TrueType/OpenType(*ttf)”格式的字體文件。安装方法有两种:一是通过FontCreator中的安装程序,直接安装在Windows上;二是退出程序后,找到计算机中导出的字体文件所在的位置,手动安装。字体文件导出前必须要对字体文件属性进行设置:

①在字体菜单栏中选择字体属性中的范围;

②设置Unicode字符集范围,根据字体文件内的字符所在的码位区来选择;

③编辑代码页字符范围:勾选(中文:简体字——中

华人民共和国和新加坡 (936));

④取消勾选“导出字体时自动更新字符范围”,点击“确认”。

汉字作为一种历史悠久、发展漫长的语素——音节文字,从古至今形成的字形数量是其他单纯表音文字难以匹敌的。因此,如此庞大复杂的文字系统如何在现有的计算机规则框架中得到最大程度的还原一直困扰着我们。Unicode所提供的大量码位和FontCreator赋予所有人自由编辑码位所对应字形的权利让我们发现了在现有技术条件下快速且灵活地实现古文字数字化的方法。

本文的字库制作模式简单明了,可操作性强,极大地降低了添加制作古文字字形的成本,提高了个人创建使用字形和字库的自由度,具有普适性意义。所制作的字体文件拥有占用内存小、可任意扩展、应用灵活等优点。根据古文字字体文件的制作过程和实际使用体验,我们还认识到,在非通用情况下不断地扩充字符集,反而尾大不掉。一般情况下,古文字字库应讲求一定的全面性。但在实际运用中,由于现有输入法的限制,数据庞大的“码位输入”对照表反而会对字符输入造成不便。如此看来,在现有技术下,我们追求的古文字字库的全面性必须根据具体的研究课题而定。如上所说,通过切换字库的方式实现不同文字形式的同屏展示反而更为便利。

在未来,为了更好地整合字形资源,实现古文字彻底的数字化,需要有三方的努力:首先,需要有一个科学统一的字符编码集合,其次是满足全文检索要求的汉字字库,最后是大众可普遍接受的输入法,三者缺一不可。

参考文献

[1]Unicode协会.Unicode 5.0标准[M].孙伟峰,李德龙,译.北京:清华大学出版社,2010.

[2]刘根辉,张晓霞.古文字字形整理与通用古文字字库开发研究[J].古汉语研究,2016(03):51-56.

[3]尉迟治平,汤勤.论中文字符集、字库及输入法的研制[J].语言研究,2006(03):63-66.

[4]尉迟治平.再论中文汉字字符集[J].语言研究,2020,40(01):78-89.

[5]张再兴.古文字字库建设的几个问题[J].中文信息学报,2003(06):60-65.

【课题项目】本文系西南民族大学省级大学生创新训练项目“字符编码技术在新文科古汉语课程中的应用——基于FontCreator的古文字字体文件制作”(项目编号:S201110656069)的阶段性成果。

猜你喜欢
字库古文字字符
Python实现图片转字符画
正则表达式快速入门
图片轻松变身ASCⅡ艺术画
对蒙古文字研究与信息发布互动平台网站建设的探讨
古文字中“口”部件的作用研究
新视野下的文字学教学研究
字库在设计中的局限性——以食品包装为例
字库字体侵权系列案例分析研究
古文字讹变问题研究回顾与再探
视频监视系统中字符叠加技术的应用