样条记录

样条记录表示二次曲线 (即 trueType 使用的二次 b 样条曲线) 。 样条记录以上一条记录 (的最后一个点开始,或者从轮廓线中的第一条记录开始,起点) 。 对于第一条样条记录,记录中的起始点和最后一个点位于字形轮廓上。 对于所有其他样条记录,只有最后一个点位于字形轮廓上。 样条记录中的所有其他点都脱离字形轮廓,必须呈现为 b 样条的控件点。

轮廓中的最后一条样条或折线记录始终以轮廓的起点结尾。 这种排列方式可确保每个轮廓都闭合。

由于 b 样条曲线需要三个点 (两个点之间的字形轮廓之间的一个点(位于轮廓) ),因此当样条记录包含多个脱曲线点时,必须执行一些计算。

例如,如果样条记录包含三个点 (A、B 和 C) 并且它不是第一条记录,则点 A 和 B 不在字形轮廓中。 若要解释点 A,请使用当前位置 (它始终位于字形轮廓) 和点 A 和 B 点之间的字形轮廓上。若要查找 A 和 B 之间的中点 (M) ,可以执行以下计算。

M = A + (B A) /2

根据 TrueType 字体中使用的样条格式的定义,样条记录中连续的轮廓点之间的中点是字形轮廓上的一个点。

如果当前位置由 P 指定,则此样条记录定义的两个二次样条 (P、A、M) 和 (M、B、C) 。