| OLD | NEW |
| (Empty) |
| 1 /***************************************************************************/ | |
| 2 /* */ | |
| 3 /* svttcmap.h */ | |
| 4 /* */ | |
| 5 /* The FreeType TrueType/sfnt cmap extra information service. */ | |
| 6 /* */ | |
| 7 /* Copyright 2003 by */ | |
| 8 /* Masatake YAMATO, Redhat K.K. */ | |
| 9 /* */ | |
| 10 /* Copyright 2003, 2008, 2009, 2012, 2013 by */ | |
| 11 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ | |
| 12 /* */ | |
| 13 /* This file is part of the FreeType project, and may only be used, */ | |
| 14 /* modified, and distributed under the terms of the FreeType project */ | |
| 15 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ | |
| 16 /* this file you indicate that you have read the license and */ | |
| 17 /* understand and accept it fully. */ | |
| 18 /* */ | |
| 19 /***************************************************************************/ | |
| 20 | |
| 21 /* Development of this service is support of | |
| 22 Information-technology Promotion Agency, Japan. */ | |
| 23 | |
| 24 #ifndef __SVTTCMAP_H__ | |
| 25 #define __SVTTCMAP_H__ | |
| 26 | |
| 27 #include FT_INTERNAL_SERVICE_H | |
| 28 #include FT_TRUETYPE_TABLES_H | |
| 29 | |
| 30 | |
| 31 FT_BEGIN_HEADER | |
| 32 | |
| 33 | |
| 34 #define FT_SERVICE_ID_TT_CMAP "tt-cmaps" | |
| 35 | |
| 36 | |
| 37 /*************************************************************************/ | |
| 38 /* */ | |
| 39 /* <Struct> */ | |
| 40 /* TT_CMapInfo */ | |
| 41 /* */ | |
| 42 /* <Description> */ | |
| 43 /* A structure used to store TrueType/sfnt specific cmap information */ | |
| 44 /* which is not covered by the generic @FT_CharMap structure. This */ | |
| 45 /* structure can be accessed with the @FT_Get_TT_CMap_Info function. */ | |
| 46 /* */ | |
| 47 /* <Fields> */ | |
| 48 /* language :: */ | |
| 49 /* The language ID used in Mac fonts. Definitions of values are in */ | |
| 50 /* `ttnameid.h'. */ | |
| 51 /* */ | |
| 52 /* format :: */ | |
| 53 /* The cmap format. OpenType 1.5 defines the formats 0 (byte */ | |
| 54 /* encoding table), 2~(high-byte mapping through table), 4~(segment */ | |
| 55 /* mapping to delta values), 6~(trimmed table mapping), 8~(mixed */ | |
| 56 /* 16-bit and 32-bit coverage), 10~(trimmed array), 12~(segmented */ | |
| 57 /* coverage), and 14 (Unicode Variation Sequences). */ | |
| 58 /* */ | |
| 59 typedef struct TT_CMapInfo_ | |
| 60 { | |
| 61 FT_ULong language; | |
| 62 FT_Long format; | |
| 63 | |
| 64 } TT_CMapInfo; | |
| 65 | |
| 66 | |
| 67 typedef FT_Error | |
| 68 (*TT_CMap_Info_GetFunc)( FT_CharMap charmap, | |
| 69 TT_CMapInfo *cmap_info ); | |
| 70 | |
| 71 | |
| 72 FT_DEFINE_SERVICE( TTCMaps ) | |
| 73 { | |
| 74 TT_CMap_Info_GetFunc get_cmap_info; | |
| 75 }; | |
| 76 | |
| 77 #ifndef FT_CONFIG_OPTION_PIC | |
| 78 | |
| 79 #define FT_DEFINE_SERVICE_TTCMAPSREC( class_, get_cmap_info_ ) \ | |
| 80 static const FT_Service_TTCMapsRec class_ = \ | |
| 81 { \ | |
| 82 get_cmap_info_ \ | |
| 83 }; | |
| 84 | |
| 85 #else /* FT_CONFIG_OPTION_PIC */ | |
| 86 | |
| 87 #define FT_DEFINE_SERVICE_TTCMAPSREC( class_, get_cmap_info_ ) \ | |
| 88 void \ | |
| 89 FT_Init_Class_ ## class_( FT_Library library, \ | |
| 90 FT_Service_TTCMapsRec* clazz ) \ | |
| 91 { \ | |
| 92 FT_UNUSED( library ); \ | |
| 93 \ | |
| 94 clazz->get_cmap_info = get_cmap_info_; \ | |
| 95 } | |
| 96 | |
| 97 #endif /* FT_CONFIG_OPTION_PIC */ | |
| 98 | |
| 99 /* */ | |
| 100 | |
| 101 | |
| 102 FT_END_HEADER | |
| 103 | |
| 104 #endif /* __SVTTCMAP_H__ */ | |
| 105 | |
| 106 | |
| 107 /* END */ | |
| OLD | NEW |