论文部分内容阅读
文字有其特定的形状并被赋予特定的含义,这种特定的形状称为字形,它是一种可以辨认的抽象图形符号。在计算机出现之后,首要问题是如何把字形转换成计算机能够识别和处理的信息,也就是在计算机内部用数字信息来表示字形。而把字形输出到显示设备上就是字体引擎所做的工作。
本文首先对字体的分类和设计原理进行了研究,并详细介绍了比较常见的PS与TT字体,以及字体编码,如GB、GBK、BIG5等。在了解字体相关知识的基础上,本文分析了几种常见的文字引擎,并重点分析了FreeType文字引擎的架构的特点,以及其基于C语言的面向对象的思想,并对其主要的接口函数以及内部的一些算法进行了研究。相对于其他的文字引擎,它有着开源、性能高、易扩充等特点。
本文还介绍了基于FreeType文字引擎架构设计并实现的文字引擎适配器,该文字引擎适配器已集成于北大方正Apabi Reader项目。针对文字引擎适配器的研究,本文还重点讨论了内部显示算法,提出了一种提升小曲线轮廓字显示效果的算法,该算法采用去冗余的思想在一定程度上减少了字形控制点的数量,所以算法不仅提高了小曲线轮廓字体的字形显示质量,大大降低了对设备的内存需求,而且也提高了字体的显示速度。本文还介绍了Type3字体的解析和简繁转换两个功能的设计与实现,并对于设计实现中存在的问题,给出了一些可行的解决方案。