在TTF字体结构中描述了TTF字体数据组成,在这里通过GLYPHMETRICS来了解TTF字体结构。理解可能有所偏差,详细情况参考MSDN。
GLYPHMETRICS的结构如下:
typedef struct _GLYPHMETRICS {
UINT gmBlackBoxX; //指定完全包围字体结构的最小矩阵的宽度
UINT gmBlackBoxY; //指定完全包围字体结构的最小矩阵的高度
POINT gmptGlyphOrigin; //指定完全包围字体结构的最小矩阵左上角的点坐标
short gmCellIncX; //指定当前的起点到下一个字符的起点的水平距离
short gmCellIncY; //...垂直距离
} GLYPHMETRICS, *LPGLYPHMETRICS;
通过下图,可以很明确的理解GLYPHMETRICS结构:
结构GLYPHMETRICS的使用主要在API函数GetGlyphOutline()来保存字符单元在字形的位置。