vrshoot

annotate libs/ft2static/freetype/internal/services/svttcmap.h @ 0:b2f14e535253

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