?? tttypes.h
字號:
/*************************************************************************/ /*************************************************************************/ /* */ /* <Struct> */ /* TT_SBit_MetricsRec */ /* */ /* <Description> */ /* A structure used to hold the big metrics of a given glyph bitmap */ /* in a TrueType or OpenType font. These are usually found in the */ /* `EBDT' (Microsoft) or `bloc' (Apple) table. */ /* */ /* <Fields> */ /* height :: The glyph height in pixels. */ /* */ /* width :: The glyph width in pixels. */ /* */ /* horiBearingX :: The horizontal left bearing. */ /* */ /* horiBearingY :: The horizontal top bearing. */ /* */ /* horiAdvance :: The horizontal advance. */ /* */ /* vertBearingX :: The vertical left bearing. */ /* */ /* vertBearingY :: The vertical top bearing. */ /* */ /* vertAdvance :: The vertical advance. */ /* */ typedef struct TT_SBit_MetricsRec_ { FT_Byte height; FT_Byte width; FT_Char horiBearingX; FT_Char horiBearingY; FT_Byte horiAdvance; FT_Char vertBearingX; FT_Char vertBearingY; FT_Byte vertAdvance; } TT_SBit_MetricsRec, *TT_SBit_Metrics; /*************************************************************************/ /* */ /* <Struct> */ /* TT_SBit_SmallMetricsRec */ /* */ /* <Description> */ /* A structure used to hold the small metrics of a given glyph bitmap */ /* in a TrueType or OpenType font. These are usually found in the */ /* `EBDT' (Microsoft) or the `bdat' (Apple) table. */ /* */ /* <Fields> */ /* height :: The glyph height in pixels. */ /* */ /* width :: The glyph width in pixels. */ /* */ /* bearingX :: The left-side bearing. */ /* */ /* bearingY :: The top-side bearing. */ /* */ /* advance :: The advance width or height. */ /* */ typedef struct TT_SBit_Small_Metrics_ { FT_Byte height; FT_Byte width; FT_Char bearingX; FT_Char bearingY; FT_Byte advance; } TT_SBit_SmallMetricsRec, *TT_SBit_SmallMetrics; /*************************************************************************/ /* */ /* <Struct> */ /* TT_SBit_LineMetricsRec */ /* */ /* <Description> */ /* A structure used to describe the text line metrics of a given */ /* bitmap strike, for either a horizontal or vertical layout. */ /* */ /* <Fields> */ /* ascender :: The ascender in pixels. */ /* */ /* descender :: The descender in pixels. */ /* */ /* max_width :: The maximum glyph width in pixels. */ /* */ /* caret_slope_enumerator :: Rise of the caret slope, typically set */ /* to 1 for non-italic fonts. */ /* */ /* caret_slope_denominator :: Rise of the caret slope, typically set */ /* to 0 for non-italic fonts. */ /* */ /* caret_offset :: Offset in pixels to move the caret for */ /* proper positioning. */ /* */ /* min_origin_SB :: Minimum of horiBearingX (resp. */ /* vertBearingY). */ /* min_advance_SB :: Minimum of */ /* */ /* horizontal advance - */ /* ( horiBearingX + width ) */ /* */ /* resp. */ /* */ /* vertical advance - */ /* ( vertBearingY + height ) */ /* */ /* max_before_BL :: Maximum of horiBearingY (resp. */ /* vertBearingY). */ /* */ /* min_after_BL :: Minimum of */ /* */ /* horiBearingY - height */ /* */ /* resp. */ /* */ /* vertBearingX - width */ /* */ /* pads :: Unused (to make the size of the record */ /* a multiple of 32 bits. */ /* */ typedef struct TT_SBit_LineMetricsRec_ { FT_Char ascender; FT_Char descender; FT_Byte max_width; FT_Char caret_slope_numerator; FT_Char caret_slope_denominator; FT_Char caret_offset; FT_Char min_origin_SB; FT_Char min_advance_SB; FT_Char max_before_BL; FT_Char min_after_BL; FT_Char pads[2]; } TT_SBit_LineMetricsRec, *TT_SBit_LineMetrics; /*************************************************************************/ /* */ /* <Struct> */ /* TT_SBit_RangeRec */ /* */ /* <Description> */ /* A TrueType/OpenType subIndexTable as defined in the `EBLC' */ /* (Microsoft) or `bloc' (Apple) tables. */ /* */ /* <Fields> */ /* first_glyph :: The first glyph index in the range. */ /* */ /* last_glyph :: The last glyph index in the range. */ /* */ /* index_format :: The format of index table. Valid values are 1 */ /* to 5. */ /* */ /* image_format :: The format of `EBDT' image data. */ /* */ /* image_offset :: The offset to image data in `EBDT'. */ /* */ /* image_size :: For index formats 2 and 5. This is the size in */ /* bytes of each glyph bitmap. */ /* */ /* big_metrics :: For index formats 2 and 5. This is the big */ /* metrics for each glyph bitmap. */ /* */ /* num_glyphs :: For index formats 4 and 5. This is the number of */ /* glyphs in the code array. */ /* */ /* glyph_offsets :: For index formats 1 and 3. */ /* */ /* glyph_codes :: For index formats 4 and 5. */ /* */ /* table_offset :: The offset of the index table in the `EBLC' */ /* table. Only used during strike loading. */ /* */ typedef struct TT_SBit_RangeRec { FT_UShort first_glyph; FT_UShort last_glyph; FT_UShort index_format; FT_UShort image_format; FT_ULong image_offset; FT_ULong image_size; TT_SBit_MetricsRec metrics; FT_ULong num_glyphs; FT_ULong* glyph_offsets; FT_UShort* glyph_codes; FT_ULong table_offset; } TT_SBit_RangeRec, *TT_SBit_Range; /*************************************************************************/ /* */ /* <Struct> */ /* TT_SBit_StrikeRec */ /* */ /* <Description> */ /* A structure used describe a given bitmap strike in the `EBLC' */ /* (Microsoft) or `bloc' (Apple) tables. */ /* */ /* <Fields> */ /* num_index_ranges :: The number of index ranges. */ /* */ /* index_ranges :: An array of glyph index ranges. */ /* */ /* color_ref :: Unused. `color_ref' is put in for future */ /* enhancements, but these fields are already */ /* in use by other platforms (e.g. Newton). */ /* For details, please see */ /* */ /* http://fonts.apple.com/ */ /* TTRefMan/RM06/Chap6bloc.html */ /* */ /* hori :: The line metrics for horizontal layouts. */ /* */ /* vert :: The line metrics for vertical layouts. */ /* */ /* start_glyph :: The lowest glyph index for this strike. */ /* */ /* end_glyph :: The highest glyph index for this strike. */ /* */ /* x_ppem :: The number of horizontal pixels per EM. */ /* */ /* y_ppem :: The number of vertical pixels per EM. */ /* */ /* bit_depth :: The bit depth. Valid values are 1, 2, 4, */ /* and 8. */ /* */ /* flags :: Is this a vertical or horizontal strike? For */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -