freetype.h

来自「关于OpenGL的实例教程源代码」· C头文件 代码 · 共 998 行 · 第 1/5 页

H
998
字号
  /* <Note>                                                                */  /*    Since many 16bit compilers don't like 32bit enumerations, you      */  /*    should redefine this macro in case of problems to something like   */  /*    this:                                                              */  /*                                                                       */  /*      #define FT_ENC_TAG( value, a, b, c, d )  (value)                 */  /*                                                                       */  /*    to get a simple enumeration without assigning special numbers.     */  /*                                                                       */#ifndef FT_ENC_TAG#define FT_ENC_TAG( value, a, b, c, d )         \          value = ( ( (FT_UInt32)(a) << 24 ) |  \                    ( (FT_UInt32)(b) << 16 ) |  \                    ( (FT_UInt32)(c) <<  8 ) |  \                      (FT_UInt32)(d)         )#endif /* FT_ENC_TAG */  /*************************************************************************/  /*                                                                       */  /* <Enum>                                                                */  /*    FT_Encoding                                                        */  /*                                                                       */  /* <Description>                                                         */  /*    An enumeration used to specify encodings supported by charmaps.    */  /*    Used in the @FT_Select_Charmap API function.                       */  /*                                                                       */  /* <Note>                                                                */  /*    Because of 32-bit charcodes defined in Unicode (i.e., surrogates), */  /*    all character codes must be expressed as FT_Longs.                 */  /*                                                                       */  /*    The values of this type correspond to specific character           */  /*    repertories (i.e. charsets), and not to text encoding methods      */  /*    (like UTF-8, UTF-16, GB2312_EUC, etc.).                            */  /*                                                                       */  /*    Other encodings might be defined in the future.                    */  /*                                                                       */  /* <Values>                                                              */  /*   FT_ENCODING_NONE ::                                                 */  /*     The encoding value 0 is reserved.                                 */  /*                                                                       */  /*   FT_ENCODING_UNICODE ::                                              */  /*     Corresponds to the Unicode character set.  This value covers      */  /*     all versions of the Unicode repertoire, including ASCII and       */  /*     Latin-1.  Most fonts include a Unicode charmap, but not all       */  /*     of them.                                                          */  /*                                                                       */  /*   FT_ENCODING_MS_SYMBOL ::                                            */  /*     Corresponds to the Microsoft Symbol encoding, used to encode      */  /*     mathematical symbols in the 32..255 character code range.  For    */  /*     more information, see `http://www.ceviz.net/symbol.htm'.          */  /*                                                                       */  /*   FT_ENCODING_MS_SJIS ::                                              */  /*     Corresponds to Microsoft's Japanese SJIS encoding.  More info     */  /*     at `http://langsupport.japanreference.com/encoding.shtml'.        */  /*     See note on multi-byte encodings below.                           */  /*                                                                       */  /*   FT_ENCODING_MS_GB2312 ::                                            */  /*     Corresponds to the encoding system for Simplified Chinese, as     */  /*     used in China.  Only found in some TrueType fonts.                */  /*                                                                       */  /*   FT_ENCODING_MS_BIG5 ::                                              */  /*     Corresponds to the encoding system for Traditional Chinese, as    */  /*     used in Taiwan and Hong Kong.  Only found in some TrueType fonts. */  /*                                                                       */  /*   FT_ENCODING_MS_WANSUNG ::                                           */  /*     Corresponds to the Korean encoding system known as Wansung.       */  /*     This is a Microsoft encoding that is only found in some TrueType  */  /*     fonts.  For more information, see                                 */  /*     `http://www.microsoft.com/typography/unicode/949.txt'.            */  /*                                                                       */  /*   FT_ENCODING_MS_JOHAB ::                                             */  /*     The Korean standard character set (KS C-5601-1992), which         */  /*     corresponds to Windows code page 1361.  This character set        */  /*     includes all possible Hangeul character combinations.             */  /*     Only found on some rare TrueType fonts.                           */  /*                                                                       */  /*   FT_ENCODING_ADOBE_LATIN_1 ::                                        */  /*     Corresponds to a Latin-1 encoding as defined in a Type 1          */  /*     Postscript font.  It is limited to 256 character codes.           */  /*                                                                       */  /*   FT_ENCODING_ADOBE_STANDARD ::                                       */  /*     Corresponds to the Adobe Standard encoding, as found in Type 1,   */  /*     CFF, and OpenType/CFF fonts.  It is limited to 256character       */  /*     codes.                                                            */  /*                                                                       */  /*   FT_ENCODING_ADOBE_EXPERT ::                                         */  /*     Corresponds to the Adobe Expert encoding, as found in Type 1,     */  /*     CFF, and OpenType/CFF fonts.  It is limited to 256 character      */  /*     codes.                                                            */  /*                                                                       */  /*   FT_ENCODING_ADOBE_CUSTOM ::                                         */  /*     Corresponds to a custom encoding, as found in Type 1, CFF, and    */  /*     OpenType/CFF fonts.  It is limited to 256 character codes.        */  /*                                                                       */  /*   FT_ENCODING_APPLE_ROMAN ::                                          */  /*     Corresponds to the 8-bit Apple roman encoding.  Many TrueType and */  /*     OpenType fonts contain a charmap for this encoding, since older   */  /*     versions of Mac OS are able to use it.                            */  /*                                                                       */  /*   FT_ENCODING_OLD_LATIN_2 ::                                          */  /*     This value is deprecated and was never used nor reported by       */  /*     FreeType.  Don't use or test for it.                              */  /*                                                                       */  /* <Note>                                                                */  /*   By default, FreeType automatically synthetizes a Unicode charmap    */  /*   for Postscript fonts, using their glyph names dictionaries.         */  /*   However, it will also report the encodings defined explicitly in    */  /*   the font file, for the cases when they are needed, with the Adobe   */  /*   values as well.                                                     */  /*                                                                       */  typedef enum  FT_Encoding_  {    FT_ENC_TAG( FT_ENCODING_NONE, 0, 0, 0, 0 ),    FT_ENC_TAG( FT_ENCODING_MS_SYMBOL,  's', 'y', 'm', 'b' ),    FT_ENC_TAG( FT_ENCODING_UNICODE,    'u', 'n', 'i', 'c' ),    FT_ENC_TAG( FT_ENCODING_MS_SJIS,    's', 'j', 'i', 's' ),    FT_ENC_TAG( FT_ENCODING_MS_GB2312,  'g', 'b', ' ', ' ' ),    FT_ENC_TAG( FT_ENCODING_MS_BIG5,    'b', 'i', 'g', '5' ),    FT_ENC_TAG( FT_ENCODING_MS_WANSUNG, 'w', 'a', 'n', 's' ),    FT_ENC_TAG( FT_ENCODING_MS_JOHAB,   'j', 'o', 'h', 'a' ),    FT_ENC_TAG( FT_ENCODING_ADOBE_STANDARD, 'A', 'D', 'O', 'B' ),    FT_ENC_TAG( FT_ENCODING_ADOBE_EXPERT,   'A', 'D', 'B', 'E' ),    FT_ENC_TAG( FT_ENCODING_ADOBE_CUSTOM,   'A', 'D', 'B', 'C' ),    FT_ENC_TAG( FT_ENCODING_ADOBE_LATIN_1,  'l', 'a', 't', '1' ),    FT_ENC_TAG( FT_ENCODING_OLD_LATIN_2, 'l', 'a', 't', '2' ),    FT_ENC_TAG( FT_ENCODING_APPLE_ROMAN, 'a', 'r', 'm', 'n' )  } FT_Encoding;  /*************************************************************************/  /*                                                                       */  /* <Enum>                                                                */  /*    ft_encoding_xxx                                                    */  /*                                                                       */  /* <Description>                                                         */  /*    These constants are deprecated; use the corresponding @FT_Encoding */  /*    values instead.                                                    */  /*                                                                       */  /* <Values>                                                              */  /*   ft_encoding_none    :: see @FT_ENCODING_NONE                        */  /*   ft_encoding_unicode :: see @FT_ENCODING_UNICODE                     */  /*   ft_encoding_latin_2 :: see @FT_ENCODING_OLD_LATIN_2                 */  /*   ft_encoding_symbol  :: see @FT_ENCODING_MS_SYMBOL                   */  /*   ft_encoding_sjis    :: see @FT_ENCODING_MS_SJIS                     */  /*   ft_encoding_gb2312  :: see @FT_ENCODING_MS_GB2312                   */  /*   ft_encoding_big5    :: see @FT_ENCODING_MS_BIG5                     */  /*   ft_encoding_wansung :: see @FT_ENCODING_MS_WANSUNG                  */  /*   ft_encoding_johab   :: see @FT_ENCODING_MS_JOHAB                    */  /*                                                                       */  /*   ft_encoding_adobe_standard :: see @FT_ENCODING_ADOBE_STANDARD       */  /*   ft_encoding_adobe_expert   :: see @FT_ENCODING_ADOBE_EXPERT         */  /*   ft_encoding_adobe_custom   :: see @FT_ENCODING_ADOBE_CUSTOM         */  /*   ft_encoding_latin_1        :: see @FT_ENCODING_ADOBE_LATIN_1        */  /*                                                                       */  /*   ft_encoding_apple_roman    :: see @FT_ENCODING_APPLE_ROMAN          */  /*                                                                       */#define  ft_encoding_none            FT_ENCODING_NONE#define  ft_encoding_unicode         FT_ENCODING_UNICODE#define  ft_encoding_symbol          FT_ENCODING_MS_SYMBOL#define  ft_encoding_latin_1         FT_ENCODING_ADOBE_LATIN_1#define  ft_encoding_latin_2         FT_ENCODING_OLD_LATIN_2#define  ft_encoding_sjis            FT_ENCODING_MS_SJIS#define  ft_encoding_gb2312          FT_ENCODING_MS_GB2312#define  ft_encoding_big5            FT_ENCODING_MS_BIG5#define  ft_encoding_wansung         FT_ENCODING_MS_WANSUNG#define  ft_encoding_johab           FT_ENCODING_MS_JOHAB#define  ft_encoding_adobe_standard  FT_ENCODING_ADOBE_STANDARD#define  ft_encoding_adobe_expert    FT_ENCODING_ADOBE_EXPERT#define  ft_encoding_adobe_custom    FT_ENCODING_ADOBE_CUSTOM#define  ft_encoding_apple_roman     FT_ENCODING_APPLE_ROMAN  /*************************************************************************/  /*                                                                       */  /* <Struct>                                                              */  /*    FT_CharMapRec                                                      */  /*                                                                       */  /* <Description>                                                         */  /*    The base charmap structure.                                        */  /*                                                                       */  /* <Fields>                                                              */  /*    face        :: A handle to the parent face object.                 */  /*                                                                       */  /*    encoding    :: An @FT_Encoding tag identifying the charmap.  Use   */  /*                   this with @FT_Select_Charmap.                       */  /*                                                                       */  /*    platform_id :: An ID number describing the platform for the        */  /*                   following encoding ID.  This comes directly from    */  /*                   the TrueType specification and should be emulated   */  /*                   for other formats.                                  */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?