📄 tttypes.h
字号:
/* A handle to a TrueType face/font object. A TT_Face encapsulates */ /* the resolution and scaling independent parts of a TrueType font */ /* resource. */ /* */ /* <Note> */ /* The TT_Face structure is also used as a `parent class' for the */ /* OpenType-CFF class (T2_Face). */ /* */ typedef struct TT_FaceRec_* TT_Face; /* a function type used for the truetype bytecode interpreter hooks */ typedef FT_Error (*TT_Interpreter)( void* exec_context ); /* forward declaration */ typedef struct TT_LoaderRec_* TT_Loader; /*************************************************************************/ /* */ /* <FuncType> */ /* TT_Loader_GotoTableFunc */ /* */ /* <Description> */ /* Seeks a stream to the start of a given TrueType table. */ /* */ /* <Input> */ /* face :: A handle to the target face object. */ /* */ /* tag :: A 4-byte tag used to name the table. */ /* */ /* stream :: The input stream. */ /* */ /* <Output> */ /* length :: The length of the table in bytes. Set to 0 if not */ /* needed. */ /* */ /* <Return> */ /* FreeType error code. 0 means success. */ /* */ /* <Note> */ /* The stream cursor must be at the font file's origin. */ /* */ typedef FT_Error (*TT_Loader_GotoTableFunc)( TT_Face face, FT_ULong tag, FT_Stream stream, FT_ULong* length ); /*************************************************************************/ /* */ /* <FuncType> */ /* TT_Loader_StartGlyphFunc */ /* */ /* <Description> */ /* Seeks a stream to the start of a given glyph element, and opens a */ /* frame for it. */ /* */ /* <Input> */ /* loader :: The current TrueType glyph loader object. */ /* */ /* glyph index :: The index of the glyph to access. */ /* */ /* offset :: The offset of the glyph according to the */ /* `locations' table. */ /* */ /* byte_count :: The size of the frame in bytes. */ /* */ /* <Return> */ /* FreeType error code. 0 means success. */ /* */ /* <Note> */ /* This function is normally equivalent to FT_STREAM_SEEK(offset) */ /* followed by FT_FRAME_ENTER(byte_count) with the loader's stream, */ /* but alternative formats (e.g. compressed ones) might use something */ /* different. */ /* */ typedef FT_Error (*TT_Loader_StartGlyphFunc)( TT_Loader loader, FT_UInt glyph_index, FT_ULong offset, FT_UInt byte_count ); /*************************************************************************/ /* */ /* <FuncType> */ /* TT_Loader_ReadGlyphFunc */ /* */ /* <Description> */ /* Reads one glyph element (its header, a simple glyph, or a */ /* composite) from the loader's current stream frame. */ /* */ /* <Input> */ /* loader :: The current TrueType glyph loader object. */ /* */ /* <Return> */ /* FreeType error code. 0 means success. */ /* */ typedef FT_Error (*TT_Loader_ReadGlyphFunc)( TT_Loader loader ); /*************************************************************************/ /* */ /* <FuncType> */ /* TT_Loader_EndGlyphFunc */ /* */ /* <Description> */ /* Closes the current loader stream frame for the glyph. */ /* */ /* <Input> */ /* loader :: The current TrueType glyph loader object. */ /* */ typedef void (*TT_Loader_EndGlyphFunc)( TT_Loader loader ); /*************************************************************************/ /* */ /* TrueType Face Type */ /* */ /* <Struct> */ /* TT_Face */ /* */ /* <Description> */ /* The TrueType face class. These objects model the resolution and */ /* point-size independent data found in a TrueType font file. */ /* */ /* <Fields> */ /* root :: The base FT_Face structure, managed by the */ /* base layer. */ /* */ /* ttc_header :: The TrueType collection header, used when */ /* the file is a `ttc' rather than a `ttf'. */ /* For ordinary font files, the field */ /* `ttc_header.count' is set to 0. */ /* */ /* format_tag :: The font format tag. */ /* */ /* num_tables :: The number of TrueType tables in this font */ /* file. */ /* */ /* dir_tables :: The directory of TrueType tables for this */ /* font file. */ /* */ /* header :: The font's font header (`head' table). */ /* Read on font opening. */ /* */ /* horizontal :: The font's horizontal header (`hhea' */ /* table). This field also contains the */ /* associated horizontal metrics table */ /* (`hmtx'). */ /* */ /* max_profile :: The font's maximum profile table. Read on */ /* font opening. Note that some maximum */ /* values cannot be taken directly from this */ /* table. We thus define additional fields */ /* below to hold the computed maxima. */ /* */ /* max_components :: The maximum number of glyph components */ /* required to load any composite glyph from */ /* this font. Used to size the load stack. */ /* */ /* vertical_info :: A boolean which is set when the font file */ /* contains vertical metrics. If not, the */ /* value of the `vertical' field is */ /* undefined. */ /* */ /* vertical :: The font's vertical header (`vhea' table). */ /* This field also contains the associated */ /* vertical metrics table (`vmtx'), if found. */ /* IMPORTANT: The contents of this field is */ /* undefined if the `verticalInfo' field is */ /* unset. */ /* */ /* num_names :: The number of name records within this */ /* TrueType font. */ /* */ /* name_table :: The table of name records (`name'). */ /* */ /* os2 :: The font's OS/2 table (`OS/2'). */ /* */ /* postscript :: The font's PostScript table (`post' */ /* table). The PostScript glyph names are */ /* not loaded by the driver on face opening. */ /* See the `ttpost' module for more details. */ /* */ /* cmap_table :: Address of the face's `cmap' SFNT table */ /* in memory (it's an extracted frame). */ /* */ /* cmap_size :: The size in bytes of the `cmap_table' */ /* described above. */ /* */ /* goto_table :: A function called by each TrueType table */ /* loader to position a stream's cursor to */ /* the start of a given table according to */ /* its tag. It defaults to TT_Goto_Face but */ /* can be different for strange formats (e.g. */ /* Type 42). */ /* */ /* access_glyph_frame :: A function used to access the frame of a */ /* given glyph within the face's font file. */ /* */ /* forget_glyph_frame :: A function used to forget the frame of a */ /* given glyph when all data has been loaded. */ /* */ /* read_glyph_header :: A function used to read a glyph header. */ /* It must be called between an `access' and */ /* `forget'. */ /* */ /* read_simple_glyph :: A function used to read a simple glyph. */ /* It must be called after the header was */ /* read, and before the `forget'. */ /* */ /* read_composite_glyph :: A function used to read a composite glyph. */ /* It must be called after the header was
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -