+/* OS/2 and Windows compatibility table */
+typedef struct t_OS_2_Tag t_OS_2;
+struct t_OS_2_Tag {
+ unsigned version;
+ int sTypoAscender, sTypoDescender;
+ int sxHeight, sCapHeight;
+};
+sfnt_decode t_OS_2_v0_decode[] = {
+ { d_uint16, offsetof(t_OS_2, version) },
+ { d_skip(66) }, /* xAvgCharWidth, usWeightClass, usWidthClass, fsType, */
+ /* ySubscriptXSize, ySubscriptYSize, ySubscriptXOffset, */
+ /* ySubscriptYOffset, ySuperscriptXSize, ySuperscriptYSize, */
+ /* ySuperscriptXOffset, ySupercriptYOffset, sFamilyClass, panose, */
+ /* ulUnicodeRange1, ulUnicodeRange2, ulUnicodeRange3, ulUnicodeRange4, */
+ /* achVendID, fsSelection, usFirstCharIndex, usLastCharIndex */
+ { d_end }
+};
+sfnt_decode t_OS_2_v1_decode[] = {
+ { d_uint16, offsetof(t_OS_2, version) },
+ { d_skip(66) }, /* xAvgCharWidth, usWeightClass, usWidthClass, fsType, */
+ /* ySubscriptXSize, ySubscriptYSize, ySubscriptXOffset, */
+ /* ySubscriptYOffset, ySuperscriptXSize, ySuperscriptYSize, */
+ /* ySuperscriptXOffset, ySupercriptYOffset, sFamilyClass, panose, */
+ /* ulUnicodeRange1, ulUnicodeRange2, ulUnicodeRange3, ulUnicodeRange4, */
+ /* achVendID, fsSelection, usFirstCharIndex, usLastCharIndex */
+ { d_int16, offsetof(t_OS_2, sTypoAscender) },
+ { d_int16, offsetof(t_OS_2, sTypoDescender) },
+ { d_skip(14) }, /* sTypoLineGap, usWinAscent, usWinDescent, */
+ /* ulCodePageRange1, ulCodePageRange2 */
+ { d_end }
+};
+sfnt_decode t_OS_2_v2_decode[] = {
+ { d_uint16, offsetof(t_OS_2, version) },
+ { d_skip(66) }, /* xAvgCharWidth, usWeightClass, usWidthClass, fsType, */
+ /* ySubscriptXSize, ySubscriptYSize, ySubscriptXOffset, */
+ /* ySubscriptYOffset, ySuperscriptXSize, ySuperscriptYSize, */
+ /* ySuperscriptXOffset, ySupercriptYOffset, sFamilyClass, panose, */
+ /* ulUnicodeRange1, ulUnicodeRange2, ulUnicodeRange3, ulUnicodeRange4, */
+ /* achVendID, fsSelection, usFirstCharIndex, usLastCharIndex */
+ { d_int16, offsetof(t_OS_2, sTypoAscender) },
+ { d_int16, offsetof(t_OS_2, sTypoDescender) },
+ { d_skip(14) }, /* sTypoLineGap, usWinAscent, usWinDescent, */
+ /* ulCodePageRange1, ulCodePageRange2 */
+ { d_int16, offsetof(t_OS_2, sxHeight) },
+ { d_int16, offsetof(t_OS_2, sCapHeight) },
+ { d_skip(6) }, /* usDefaultChar, usBreakChar, usMaxContext */
+ { d_end }
+};
+