Charles.Forsyth20060303a828770d19 years agoHistory
1022 lines · 47.3 KB · C
RawDownload
/***************************************************************************//*                                                                         *//*  ttnameid.h                                                             *//*                                                                         *//*    TrueType name ID definitions (specification only).                   *//*                                                                         *//*  Copyright 1996-2002 by                                                 *//*  David Turner, Robert Wilhelm, and Werner Lemberg.                      *//*                                                                         *//*  This file is part of the FreeType project, and may only be used,       *//*  modified, and distributed under the terms of the FreeType project      *//*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     *//*  this file you indicate that you have read the license and              *//*  understand and accept it fully.                                        *//*                                                                         *//***************************************************************************/  #ifndef __TTNAMEID_H__#define __TTNAMEID_H__  #include <ft2build.h>  FT_BEGIN_HEADER    /*************************************************************************/  /*                                                                       */  /* Possible values for the `platform' identifier code in the name        */  /* records of the TTF `name' table.                                      */  /*                                                                       */  /*************************************************************************/    /***********************************************************************   *   * @enum:   *   TT_PLATFORM_XXX   *   * @description:   *   A list of valid values for the `platform_id' identifier code in   *   @FT_CharmapRec and @FT_SfntName structures.   *   * @values:   *   TT_PLATFORM_APPLE_UNICODE ::   *     Used by Apple to indicate a Unicode character map and/or name entry.   *     See @TT_APPLE_ID_XXX for corresponding `encoding_id' values.  Note   *     that name entries in this format are coded as big-endian UCS-2   *     character codes _only_.   *   *   TT_PLATFORM_MACINTOSH ::   *     Used by Apple to indicate a MacOS-specific charmap and/or name entry.   *     See @TT_MAC_ID_XXX for corresponding `encoding_id' values.  Note that   *     most TrueType fonts contain an Apple roman charmap to be usable on   *     MacOS systems (even if they contain a Microsoft charmap as well).   *   *   TT_PLATFORM_ISO ::   *     This value was used to specify Unicode charmaps.  It is however   *     now deprecated.  See @TT_ISO_ID_XXX for a list of corresponding   *     `encoding_id' values.   *   *   TT_PLATFORM_MICROSOFT ::   *     Used by Microsoft to indicate Windows-specific charmaps.  See   *     @TT_MS_ID_XXX for a list of corresponding `encoding_id' values.   *     Note that most fonts contain a Unicode charmap using   *     (@TT_PLATFORM_MICROSOFT, @TT_MS_ID_UNICODE_CS).   *   *   TT_PLATFORM_CUSTOM ::   *     Used to indicate application-specific charmaps.   *   *   TT_PLATFORM_ADOBE ::   *     This value isn't part of any font format specification, but is used   *     by FreeType to report Adobe-specific charmaps in an @FT_CharMapRec   *     structure.  See @TT_ADOBE_ID_XXX.   */ #define TT_PLATFORM_APPLE_UNICODE  0#define TT_PLATFORM_MACINTOSH      1#define TT_PLATFORM_ISO            2 /* deprecated */#define TT_PLATFORM_MICROSOFT      3#define TT_PLATFORM_CUSTOM         4#define TT_PLATFORM_ADOBE          7 /* artificial */    /***********************************************************************   *   * @enum:   *   TT_APPLE_ID_XXX   *   * @description:   *   A list of valid values for the `encoding_id' for   *   @TT_PLATFORM_APPLE_UNICODE charmaps and name entries.   *   * @values:   *   TT_APPLE_ID_DEFAULT ::   *     Unicode version 1.0.   *   TT_APPLE_ID_UNICODE_1_1 ::   *     Unicode 1.1; specifies Hangul characters starting at U+34xx.   *   TT_APPLE_ID_ISO_10646 ::   *     Deprecated.   *   TT_APPLE_ID_UNICODE_2_0 ::   *     Unicode 2.0 and beyond (UTF-16 BMP only).   *   TT_APPLE_ID_UNICODE_32 ::   *     UTF-32 (Adobe proposal for OpenType).   */ #define TT_APPLE_ID_DEFAULT      0 /* Unicode 1.0 */#define TT_APPLE_ID_UNICODE_1_1  1 /* specify Hangul at U+34xx */#define TT_APPLE_ID_ISO_10646    2 /* deprecated */#define TT_APPLE_ID_UNICODE_2_0  3 /* or later */#define TT_APPLE_ID_UNICODE_32   4 /* Adobe proposal */    /***********************************************************************   *   * @enum:   *   TT_MAC_ID_XXX   *   * @description:   *   A list of valid values for the `encoding_id' for   *   @TT_PLATFORM_MACINTOSH charmaps and name entries.   *   * @values:   *   TT_MAC_ID_ROMAN ::   *   TT_MAC_ID_JAPANESE ::   *   TT_MAC_ID_TRADITIONAL_CHINESE ::   *   TT_MAC_ID_KOREAN ::   *   TT_MAC_ID_ARABIC ::   *   TT_MAC_ID_HEBREW ::   *   TT_MAC_ID_GREEK ::   *   TT_MAC_ID_RUSSIAN ::   *   TT_MAC_ID_RSYMBOL ::   *   TT_MAC_ID_DEVANAGARI ::   *   TT_MAC_ID_GURMUKHI ::   *   TT_MAC_ID_GUJARATI ::   *   TT_MAC_ID_ORIYA ::   *   TT_MAC_ID_BENGALI ::   *   TT_MAC_ID_TAMIL ::   *   TT_MAC_ID_TELUGU ::   *   TT_MAC_ID_KANNADA ::   *   TT_MAC_ID_MALAYALAM ::   *   TT_MAC_ID_SINHALESE ::   *   TT_MAC_ID_BURMESE ::   *   TT_MAC_ID_KHMER ::   *   TT_MAC_ID_THAI ::   *   TT_MAC_ID_LAOTIAN ::   *   TT_MAC_ID_GEORGIAN ::   *   TT_MAC_ID_ARMENIAN ::   *   TT_MAC_ID_MALDIVIAN ::   *   TT_MAC_ID_SIMPLIFIED_CHINESE ::   *   TT_MAC_ID_TIBETAN ::   *   TT_MAC_ID_MONGOLIAN ::   *   TT_MAC_ID_GEEZ ::   *   TT_MAC_ID_SLAVIC ::   *   TT_MAC_ID_VIETNAMESE ::   *   TT_MAC_ID_SINDHI ::   *   TT_MAC_ID_UNINTERP ::   */ #define TT_MAC_ID_ROMAN                 0#define TT_MAC_ID_JAPANESE              1#define TT_MAC_ID_TRADITIONAL_CHINESE   2#define TT_MAC_ID_KOREAN                3#define TT_MAC_ID_ARABIC                4#define TT_MAC_ID_HEBREW                5#define TT_MAC_ID_GREEK                 6#define TT_MAC_ID_RUSSIAN               7#define TT_MAC_ID_RSYMBOL               8#define TT_MAC_ID_DEVANAGARI            9#define TT_MAC_ID_GURMUKHI             10#define TT_MAC_ID_GUJARATI             11#define TT_MAC_ID_ORIYA                12#define TT_MAC_ID_BENGALI              13#define TT_MAC_ID_TAMIL                14#define TT_MAC_ID_TELUGU               15#define TT_MAC_ID_KANNADA              16#define TT_MAC_ID_MALAYALAM            17#define TT_MAC_ID_SINHALESE            18#define TT_MAC_ID_BURMESE              19#define TT_MAC_ID_KHMER                20#define TT_MAC_ID_THAI                 21#define TT_MAC_ID_LAOTIAN              22#define TT_MAC_ID_GEORGIAN             23#define TT_MAC_ID_ARMENIAN             24#define TT_MAC_ID_MALDIVIAN            25#define TT_MAC_ID_SIMPLIFIED_CHINESE   25#define TT_MAC_ID_TIBETAN              26#define TT_MAC_ID_MONGOLIAN            27#define TT_MAC_ID_GEEZ                 28#define TT_MAC_ID_SLAVIC               29#define TT_MAC_ID_VIETNAMESE           30#define TT_MAC_ID_SINDHI               31#define TT_MAC_ID_UNINTERP             32    /***********************************************************************   *   * @enum:   *   TT_ISO_ID_XXX   *   * @description:   *   A list of valid values for the `encoding_id' for   *   @TT_PLATFORM_ISO charmaps and name entries.   *   *   Their use is now deprecated.   *   * @values:   *   TT_ISO_ID_7BIT_ASCII ::   *     ASCII.   *   TT_ISO_ID_10646 ::   *     ISO/10646.   *   TT_ISO_ID_8859_1 ::   *     Also known as Latin-1.   */ #define TT_ISO_ID_7BIT_ASCII  0#define TT_ISO_ID_10646       1#define TT_ISO_ID_8859_1      2    /***********************************************************************   *   * @enum:   *   TT_MS_ID_XXX   *   * @description:   *   A list of valid values for the `encoding_id' for   *   @TT_PLATFORM_MICROSOFT charmaps and name entries.   *   * @values:   *   TT_MS_ID_SYMBOL_CS ::   *     Corresponds to symbol encodings. see @FT_ENCODING_MS_SYMBOL.   *   *   TT_MS_ID_UNICODE_CS ::   *     Corresponds to a Microsoft WGL4 charmap, matching Unicode.  See   *     @FT_ENCODING_UNICODE.   *   *   TT_MS_ID_SJIS ::   *     Corresponds to Microsoft SJIS Japanese encoding.   *     See @FT_ENCODING_MS_SJIS.   *   *   TT_MS_ID_GB2312 ::   *     Corresponds to Microsoft Simplified Chinese as used in Mainland   *     China.  See @FT_ENCODING_MS_GB2312.   *   *   TT_MS_ID_BIG_5 ::   *     Corresponds to Microsoft Traditional Chinese as used in Taiwan and   *     Hong Kong.  See @FT_ENCODING_MS_BIG5.   *   *   TT_MS_ID_WANSUNG ::   *     Corresponds to Microsoft Korean Wansung encoding.  See   *     @FT_ENCODING_MS_WANSUNG.   *   *   TT_MS_ID_JOHAB ::   *     Corresponds to Microsoft Johab encoding.  See @FT_ENCODING_MS_JOHAB.   *   *   TT_MS_ID_UCS_4 ::   *     Corresponds to UCS-4 or UTF-32 charmaps.  This is a recent Adobe   *     proposal for OpenType.   */ #define TT_MS_ID_SYMBOL_CS    0#define TT_MS_ID_UNICODE_CS   1#define TT_MS_ID_SJIS         2#define TT_MS_ID_GB2312       3#define TT_MS_ID_BIG_5        4#define TT_MS_ID_WANSUNG      5#define TT_MS_ID_JOHAB        6#define TT_MS_ID_UCS_4       10    /***********************************************************************   *   * @enum:   *   TT_ADOBE_ID_XXX   *   * @description:   *   A list of valid values for the `encoding_id' for   *   @TT_PLATFORM_ADOBE charmaps.  This is a FreeType-specific extension!   *   * @values:   *   TT_ADOBE_ID_STANDARD ::   *     Adobe standard encoding.   *   TT_ADOBE_ID_EXPERT ::   *     Adobe expert encoding.   *   TT_ADOBE_ID_CUSTOM ::   *     Adobe custom encoding.   */ #define TT_ADOBE_ID_STANDARD  0#define TT_ADOBE_ID_EXPERT    1#define TT_ADOBE_ID_CUSTOM    2    /*************************************************************************/  /*                                                                       */  /* Possible values of the language identifier field in the name records  */  /* of the TTF `name' table if the `platform' identifier code is          */  /* TT_PLATFORM_MACINTOSH.                                                */  /*                                                                       */  /* The canonical source for the Apple assigned Language ID's is at       */  /*                                                                       */  /*   http://fonts.apple.com/TTRefMan/RM06/Chap6name.html                 */  /*                                                                       */#define TT_MAC_LANGID_ENGLISH                       0#define TT_MAC_LANGID_FRENCH                        1#define TT_MAC_LANGID_GERMAN                        2#define TT_MAC_LANGID_ITALIAN                       3#define TT_MAC_LANGID_DUTCH                         4#define TT_MAC_LANGID_SWEDISH                       5#define TT_MAC_LANGID_SPANISH                       6#define TT_MAC_LANGID_DANISH                        7#define TT_MAC_LANGID_PORTUGUESE                    8#define TT_MAC_LANGID_NORWEGIAN                     9#define TT_MAC_LANGID_HEBREW                       10#define TT_MAC_LANGID_JAPANESE                     11#define TT_MAC_LANGID_ARABIC                       12#define TT_MAC_LANGID_FINNISH                      13#define TT_MAC_LANGID_GREEK                        14#define TT_MAC_LANGID_ICELANDIC                    15#define TT_MAC_LANGID_MALTESE                      16#define TT_MAC_LANGID_TURKISH                      17#define TT_MAC_LANGID_CROATIAN                     18#define TT_MAC_LANGID_CHINESE_TRADITIONAL          19#define TT_MAC_LANGID_URDU                         20#define TT_MAC_LANGID_HINDI                        21#define TT_MAC_LANGID_THAI                         22#define TT_MAC_LANGID_KOREAN                       23#define TT_MAC_LANGID_LITHUANIAN                   24#define TT_MAC_LANGID_POLISH                       25#define TT_MAC_LANGID_HUNGARIAN                    26#define TT_MAC_LANGID_ESTONIAN                     27#define TT_MAC_LANGID_LETTISH                      28#define TT_MAC_LANGID_SAAMISK                      29#define TT_MAC_LANGID_FAEROESE                     30#define TT_MAC_LANGID_FARSI                        31#define TT_MAC_LANGID_RUSSIAN                      32#define TT_MAC_LANGID_CHINESE_SIMPLIFIED           33#define TT_MAC_LANGID_FLEMISH                      34#define TT_MAC_LANGID_IRISH                        35#define TT_MAC_LANGID_ALBANIAN                     36#define TT_MAC_LANGID_ROMANIAN                     37#define TT_MAC_LANGID_CZECH                        38#define TT_MAC_LANGID_SLOVAK                       39#define TT_MAC_LANGID_SLOVENIAN                    40#define TT_MAC_LANGID_YIDDISH                      41#define TT_MAC_LANGID_SERBIAN                      42#define TT_MAC_LANGID_MACEDONIAN                   43#define TT_MAC_LANGID_BULGARIAN                    44#define TT_MAC_LANGID_UKRAINIAN                    45#define TT_MAC_LANGID_BYELORUSSIAN                 46#define TT_MAC_LANGID_UZBEK                        47#define TT_MAC_LANGID_KAZAKH                       48#define TT_MAC_LANGID_AZERBAIJANI                  49#define TT_MAC_LANGID_AZERBAIJANI_CYRILLIC_SCRIPT  49#define TT_MAC_LANGID_AZERBAIJANI_ARABIC_SCRIPT    50#define TT_MAC_LANGID_ARMENIAN                     51#define TT_MAC_LANGID_GEORGIAN                     52#define TT_MAC_LANGID_MOLDAVIAN                    53#define TT_MAC_LANGID_KIRGHIZ                      54#define TT_MAC_LANGID_TAJIKI                       55#define TT_MAC_LANGID_TURKMEN                      56#define TT_MAC_LANGID_MONGOLIAN                    57#define TT_MAC_LANGID_MONGOLIAN_MONGOLIAN_SCRIPT   57#define TT_MAC_LANGID_MONGOLIAN_CYRILLIC_SCRIPT    58#define TT_MAC_LANGID_PASHTO                       59#define TT_MAC_LANGID_KURDISH                      60#define TT_MAC_LANGID_KASHMIRI                     61#define TT_MAC_LANGID_SINDHI                       62#define TT_MAC_LANGID_TIBETAN                      63#define TT_MAC_LANGID_NEPALI                       64#define TT_MAC_LANGID_SANSKRIT                     65#define TT_MAC_LANGID_MARATHI                      66#define TT_MAC_LANGID_BENGALI                      67#define TT_MAC_LANGID_ASSAMESE                     68#define TT_MAC_LANGID_GUJARATI                     69#define TT_MAC_LANGID_PUNJABI                      70#define TT_MAC_LANGID_ORIYA                        71#define TT_MAC_LANGID_MALAYALAM                    72#define TT_MAC_LANGID_KANNADA                      73#define TT_MAC_LANGID_TAMIL                        74#define TT_MAC_LANGID_TELUGU                       75#define TT_MAC_LANGID_SINHALESE                    76#define TT_MAC_LANGID_BURMESE                      77#define TT_MAC_LANGID_KHMER                        78#define TT_MAC_LANGID_LAO                          79#define TT_MAC_LANGID_VIETNAMESE                   80#define TT_MAC_LANGID_INDONESIAN                   81#define TT_MAC_LANGID_TAGALOG                      82#define TT_MAC_LANGID_MALAY_ROMAN_SCRIPT           83#define TT_MAC_LANGID_MALAY_ARABIC_SCRIPT          84#define TT_MAC_LANGID_AMHARIC                      85#define TT_MAC_LANGID_TIGRINYA                     86#define TT_MAC_LANGID_GALLA                        87#define TT_MAC_LANGID_SOMALI                       88#define TT_MAC_LANGID_SWAHILI                      89#define TT_MAC_LANGID_RUANDA                       90#define TT_MAC_LANGID_RUNDI                        91#define TT_MAC_LANGID_CHEWA                        92#define TT_MAC_LANGID_MALAGASY                     93#define TT_MAC_LANGID_ESPERANTO                    94#define TT_MAC_LANGID_WELSH                       128#define TT_MAC_LANGID_BASQUE                      129#define TT_MAC_LANGID_CATALAN                     130#define TT_MAC_LANGID_LATIN                       131#define TT_MAC_LANGID_QUECHUA                     132#define TT_MAC_LANGID_GUARANI                     133#define TT_MAC_LANGID_AYMARA                      134#define TT_MAC_LANGID_TATAR                       135#define TT_MAC_LANGID_UIGHUR                      136#define TT_MAC_LANGID_DZONGKHA                    137#define TT_MAC_LANGID_JAVANESE                    138#define TT_MAC_LANGID_SUNDANESE                   139  #if 0  /* these seem to be errors that have been dropped */ #define TT_MAC_LANGID_SCOTTISH_GAELIC             140#define TT_MAC_LANGID_IRISH_GAELIC                141 #endif    /* The following codes are new as of 2000-03-10 */#define TT_MAC_LANGID_GALICIAN                    140#define TT_MAC_LANGID_AFRIKAANS                   141#define TT_MAC_LANGID_BRETON                      142#define TT_MAC_LANGID_INUKTITUT                   143#define TT_MAC_LANGID_SCOTTISH_GAELIC             144#define TT_MAC_LANGID_MANX_GAELIC                 145#define TT_MAC_LANGID_IRISH_GAELIC                146#define TT_MAC_LANGID_TONGAN                      147#define TT_MAC_LANGID_GREEK_POLYTONIC             148#define TT_MAC_LANGID_GREELANDIC                  149#define TT_MAC_LANGID_AZERBAIJANI_ROMAN_SCRIPT    150    /*************************************************************************/  /*                                                                       */  /* Possible values of the language identifier field in the name records  */  /* of the TTF `name' table if the `platform' identifier code is          */  /* TT_PLATFORM_MICROSOFT.                                                */  /*                                                                       */  /* The canonical source for the MS assigned LCID's is at                 */  /*                                                                       */  /*   http://www.microsoft.com/typography/OTSPEC/lcid-cp.txt              */  /*                                                                       */#define TT_MS_LANGID_ARABIC_SAUDI_ARABIA               0x0401#define TT_MS_LANGID_ARABIC_IRAQ                       0x0801#define TT_MS_LANGID_ARABIC_EGYPT                      0x0c01#define TT_MS_LANGID_ARABIC_LIBYA                      0x1001#define TT_MS_LANGID_ARABIC_ALGERIA                    0x1401#define TT_MS_LANGID_ARABIC_MOROCCO                    0x1801#define TT_MS_LANGID_ARABIC_TUNISIA                    0x1c01#define TT_MS_LANGID_ARABIC_OMAN                       0x2001#define TT_MS_LANGID_ARABIC_YEMEN                      0x2401#define TT_MS_LANGID_ARABIC_SYRIA                      0x2801#define TT_MS_LANGID_ARABIC_JORDAN                     0x2c01#define TT_MS_LANGID_ARABIC_LEBANON                    0x3001#define TT_MS_LANGID_ARABIC_KUWAIT                     0x3401#define TT_MS_LANGID_ARABIC_UAE                        0x3801#define TT_MS_LANGID_ARABIC_BAHRAIN                    0x3c01#define TT_MS_LANGID_ARABIC_QATAR                      0x4001#define TT_MS_LANGID_BULGARIAN_BULGARIA                0x0402#define TT_MS_LANGID_CATALAN_SPAIN                     0x0403#define TT_MS_LANGID_CHINESE_TAIWAN                    0x0404#define TT_MS_LANGID_CHINESE_PRC                       0x0804#define TT_MS_LANGID_CHINESE_HONG_KONG                 0x0c04#define TT_MS_LANGID_CHINESE_SINGAPORE                 0x1004 #if 1  /* this used to be this value (and it still is in many places) */#define TT_MS_LANGID_CHINESE_MACAU                     0x1404#else  /* but beware, Microsoft may change its mind...          the most recent Word reference has the following: */#define TT_MS_LANGID_CHINESE_MACAU  TT_MS_LANGID_CHINESE_HONG_KONG#endif #define TT_MS_LANGID_CZECH_CZECH_REPUBLIC              0x0405#define TT_MS_LANGID_DANISH_DENMARK                    0x0406#define TT_MS_LANGID_GERMAN_GERMANY                    0x0407#define TT_MS_LANGID_GERMAN_SWITZERLAND                0x0807#define TT_MS_LANGID_GERMAN_AUSTRIA                    0x0c07#define TT_MS_LANGID_GERMAN_LUXEMBOURG                 0x1007#define TT_MS_LANGID_GERMAN_LIECHTENSTEI               0x1407#define TT_MS_LANGID_GREEK_GREECE                      0x0408#define TT_MS_LANGID_ENGLISH_UNITED_STATES             0x0409#define TT_MS_LANGID_ENGLISH_UNITED_KINGDOM            0x0809#define TT_MS_LANGID_ENGLISH_AUSTRALIA                 0x0c09#define TT_MS_LANGID_ENGLISH_CANADA                    0x1009#define TT_MS_LANGID_ENGLISH_NEW_ZEALAND               0x1409#define TT_MS_LANGID_ENGLISH_IRELAND                   0x1809#define TT_MS_LANGID_ENGLISH_SOUTH_AFRICA              0x1c09#define TT_MS_LANGID_ENGLISH_JAMAICA                   0x2009#define TT_MS_LANGID_ENGLISH_CARIBBEAN                 0x2409#define TT_MS_LANGID_ENGLISH_BELIZE                    0x2809#define TT_MS_LANGID_ENGLISH_TRINIDAD                  0x2c09#define TT_MS_LANGID_ENGLISH_ZIMBABWE                  0x3009#define TT_MS_LANGID_ENGLISH_PHILIPPINES               0x3409

Lines 1–500 of 1022.