矢量字体(Vector font)中每一个字形是通过
数学曲线来描述的,它包含了字形边界上的关键点,连线的
导数信息等,字体的渲染引擎通过读取这些数学矢量,然后进行一定的数学运算来进行
渲染。这类字体的优点是字体实际尺寸可以任意缩放而不变形、变色。矢量字体主要包括 Type1 、
TrueType、
OpenType等几类。
Type1全称PostScript Type1,是1985年由Adobe公司提出的一套矢量字体标准,由于这个标准是基于PostScript Description Language(PDL),而PDL又是
高端打印机首选的打印描述语言,所以Type1迅速流行起来。但是Type1是非开放字体,Adobe对使用Type1的公司征收高额的使用费。
Type1使用三次贝塞尔曲线来描述字形,
TrueType则使用二次贝塞尔曲线来描述字形。所以Type1的字体比
TrueType字体更加精确美观。一个误解是,Type1字体比TrueType字体占用空间多。这是因为同样描述一个圆形,二次贝塞尔曲线只需要8个关键点和7段
二次曲线;而三次贝塞尔曲线则需要12个关键点和11段三次曲线。然而实际情况是一般来说 Type1比TrueType要小10%左右。这是因为对于稍微复杂的字形,为了保持平滑,TrueType必须使用更多的关键点。由于现代大部分打印机都是使用PDL作为打印描述语言,所以Type1字体打印的时候不会产生形变,速度快;而
TrueType则需要翻译成PDL,由于曲线方程的变化,还会产生一定的形变,不如Type1美观。