2024年5月4日发(作者:)

矢量字体

简介

矢量字体(Vector font)中每一个字形是通过数学曲线来描述的,它包

含了字形边界上的关键点,连线的导数信息等,字体的渲染引擎通过读取

这些数学矢量,然后进行一定的数学运算来进行渲染。这类字体的优点是

字体实际尺寸可以任意缩放而不变形、变色。矢量字体主要包括 Type1 、

TrueType、OpenType等几类。

又叫Outline font,通常使用贝塞尔曲线,绘图指令和数学公式进行

绘制。这样可以在对字体进行任意缩放的时候保持字体边缘依然光滑,字

体色素不会丢失。

编辑本段分类

目前主流的矢量字体格式有3种:Type1,TrueType和OpenType,这

三种格式都是平台无关的。

Type1全称PostScript Type1,是1985年由Adobe公司提出的一套矢

量字体标准,由于这个标准是基于PostScript Description

Language(PDL),而PDL又是高端打印机首选的打印描述语言,所以Type1

迅速流行起来。但是Type1是非开放字体,Adobe对使用Type1的公司征收

高额的使用费。

TrueType是1991年由Apple公司与Microsoft公司联合提出另一套矢

量字标准。

Type1使用三次贝塞尔曲线来描述字形,TrueType则使用二次贝塞尔

曲线来描述字形。所以Type1的字体比TrueType字体更加精确美观。一个

误解是,Type1字体比TrueType字体占用空间多。这是因为同样描述一个

圆形,二次贝塞尔曲线只需要8个关键点和7段二次曲线;而三次贝塞尔

曲线则需要12个关键点和11段三次曲线。然而实际情况是一般来说 Type1

比TrueType要小10%左右。这是因为对于稍微复杂的字形,为了保持平滑,

TrueType必须使用更多的关键点。由于现代大部分打印机都是使用PDL作

为打印描述语言,所以True1字体打印的时候不会产生形变,速度快;而

TrueType则需要翻译成PDL,由于曲线方程的变化,还会产生一定的形变,

不如Type1美观。

这么说来,Type1应该比TrueType更具有优势,为什么如今的计算机

上TrueType反而比Type1使用更广泛呢?这是因为第一:Type1由于字体

方程的复杂,所以在屏幕上渲染的时候,花费的时间多,解决方案是大部

分Type1字体嵌入了点阵字体,这样渲染快,但是边缘不光滑,比较难看。

很多ps文档和ps转换的pdf文档都是这样,在计算机上浏览的时候字体

很难看,但是打印出来很美观。TrueType则渲染比较快,可以平滑的显示

在屏幕上,看上去很美观。

第二个原因是Type1的高额使用费,使得Type1没有被所有的操作系

统所支持。Windows家族只有OS/2和windows 2000及之后的版本从操作系

统级别开始支持Type1。由于这个问题,Adobe只好在其所有的产品中嵌入

Adobe Type Manager(ATM)作为渲染引擎。

OpenType则是Type1与TrueType之争的最终产物。1995年,Adobe公

司和Microsoft公司开始联手开发一种兼容Type1和TrueType,并且真正

支持Unicode的字体,后来在发布的时候,正式命名为OpenType。OpenType

可以嵌入Type1和TrueType,这样就兼有了二者的特点,无论是在屏幕上

察看还是打印,质量都非常优秀。可以说OpenType是一个三赢的结局,无

论是Adobe,Microsoft还是最终用户,都从OpenType中得到了好处。

Windows家族从Windows 2000开始,正式支持OpenType。打开系统的字体

目录(一般是C:WindowsFonts或C:WinntFonts),可以看到:一个

红色A的图标的是点阵字体,两个重叠的T的图标是TrueType字体,一个

O的图标就是OpenType字体。

矢量字体扩展名ttf。

1前言

随着数字电视广播的发展,各大中城市陆续开播了数字电视节目。作为模拟电视到数字

电视的过渡产品,STB(Set Top Box,机顶盒)正逐步走进千家万户。机顶盒作为直接

面向用户的新兴家电产品,其人机交互界面(GUI)要美观大方。文字作为GUI界面的

主要组成元素与信息承载点,其重要性不言而喻。

文字显示一般采用矢量或点阵两种字体,矢量字体可进行字体的无级放大、快速变形以

及制作动画,放大后的字体平滑圆润,没有锯齿,做成的动画速度很快,感觉不到字型

变换带来的滞留感。利用矢量字库进行字型变换,如平移、缩放、旋转、倾斜等,算法

简单,速度快,失真小,效果好,可产生高质量的汉字输出。而点阵字体大小固定单一,

不仅在放大缩小时很困难,效果也不好,速度慢,字体单调,很难达到美观的要求。使

用矢量字体来提高机顶盒界面质量是有效的方法。

2机顶盒实现矢量字体的特殊要求

为节约成本,机顶盒的硬件资源往往很有限,CPU主频,ROM,RAM分别在100 MHz,2

MB,8 MB左右,所以,实用的机顶盒矢量字体应达到以下指标:

①字库大小在2 MB以下;

②动态内存占用在10 kB以下;

③24×24字体呈现速度达到每秒250汉字以上。

2.1矢量字库的选择

广义的矢量字库包括矢量字库和曲线字库,其中又分为单线体、笔画轮廓体、纯轮廓体、