论文部分内容阅读
文字是一份电子文档的主要内容,而字体是文字的一个重要属性,任何文字都不能脱离字体而单独存在。在文档格式转换中,对字体的处理是一个十分重要的方面。
为了保证电子文档中的文字所采用的字体在不同的软、硬件环境下都能够正确地显示,可以考虑将字体文件嵌入到电子文档中,这样即使在没有安装该字体的计算机上也可以正常显示字体。但是,字体的类型很多,为了实现原版原式地显示电子文档,解析引擎就需要支持电子文档中涉及的所有字体。为了实现解析引擎内核精练、解析速度快的目的,可以考虑在电子文档中只使用有限的几种字体,而把其它的字体都转换成支持的某种字体。本文设计并实现了从Typel字体向TrueType字体的转换。将Type1字体转换成TrueType字体,其中最重要的部分是轮廓数据的转换,其实质是将三次Bezier曲线转换成二次Bezier曲线。文中分析了Bezier曲线降阶的一般方法,提出了一种拐点分割和逼近分割相结合的分段策略,实验结果表明,使用该方法进行三次Bezier曲线到二次Bezier曲线的转换,结果的分段数较少,从而转换后的字体文件体积较小。
将字体文件嵌入到电子文档中之后,可以保证在没有安装该字体的计算机上也可以正常显示字体,但是却增大了文档的体积,因此需要对字体嵌入技术进行优化。本文设计了一种用于保存多个字体文件的内嵌字体存储区的结构,并实现了提取公共字体文件的策略,达到了对嵌入的字体文件进行优化的目的。