Fonts FontForge中字体图示符的样条线集

Fonts FontForge中字体图示符的样条线集,fonts,postscript,spline,bspline,fontforge,Fonts,Postscript,Spline,Bspline,Fontforge,使用SFD格式保存字体时,SplineSet如下所示 388 268 m 1,0,1 354 357 354 357 285 569 c 1,2,3 276 546 276 546 239 441 c 128,-1,4 202 336 202 336 174 268 c 1,5,6 252 266 252 266 305 266 c 128,-1,7 358 266 358 266 388 268 c 1,0, 与PostScript的结构相同(导出单个图示符时) 虽然起点和终点相同

使用SFD格式保存字体时,SplineSet如下所示

388 268 m 1,0,1
 354 357 354 357 285 569 c 1,2,3
 276 546 276 546 239 441 c 128,-1,4
 202 336 202 336 174 268 c 1,5,6
 252 266 252 266 305 266 c 128,-1,7
 358 266 358 266 388 268 c 1,0,
与PostScript的结构相同(导出单个图示符时)

虽然起点和终点相同,但SDF和PostScript中的控制点不同,后者是正确的

我的问题是:SFD文件中额外的三个数字是什么?他们是否将控制点的位置更正为PostScript的位置?如果是,如何进行。如果否,为什么SFD和PostScript中的控制点值不同

我知道最后两个数字是TTF点数。只有标志(m/c/l)后的第一个数字(在我的例子中通常是0、1、128和256)才能更正控制点的位置。然而,FontForge SDF文件格式显示

0x3 indicates whether the point is curve (0), corner (1) or tangent (2).
0x4 point selected

如何将SDF坐标转换为实际的PostScript点?

PostScript部分的来源是什么?PS字体中的字形通常在1000x1000坐标空间中布局。可能SFD坐标在不同的空间中,或者以不同的方式量化,或者其中一个可以应用提示?如果您使用的是postscript
charpath
运算符,那么这肯定是一个经过后处理的数字,它已被量化为设备整数,然后
itransform
转换回用户空间。
0x3 indicates whether the point is curve (0), corner (1) or tangent (2).
0x4 point selected