vrshoot
diff 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 |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/libs/ft2static/freetype/internal/services/svttcmap.h Sat Feb 01 19:58:19 2014 +0200 1.3 @@ -0,0 +1,106 @@ 1.4 +/***************************************************************************/ 1.5 +/* */ 1.6 +/* svttcmap.h */ 1.7 +/* */ 1.8 +/* The FreeType TrueType/sfnt cmap extra information service. */ 1.9 +/* */ 1.10 +/* Copyright 2003 by */ 1.11 +/* Masatake YAMATO, Redhat K.K. */ 1.12 +/* */ 1.13 +/* Copyright 2003, 2008 by */ 1.14 +/* David Turner, Robert Wilhelm, and Werner Lemberg. */ 1.15 +/* */ 1.16 +/* This file is part of the FreeType project, and may only be used, */ 1.17 +/* modified, and distributed under the terms of the FreeType project */ 1.18 +/* license, LICENSE.TXT. By continuing to use, modify, or distribute */ 1.19 +/* this file you indicate that you have read the license and */ 1.20 +/* understand and accept it fully. */ 1.21 +/* */ 1.22 +/***************************************************************************/ 1.23 + 1.24 +/* Development of this service is support of 1.25 + Information-technology Promotion Agency, Japan. */ 1.26 + 1.27 +#ifndef __SVTTCMAP_H__ 1.28 +#define __SVTTCMAP_H__ 1.29 + 1.30 +#include FT_INTERNAL_SERVICE_H 1.31 +#include FT_TRUETYPE_TABLES_H 1.32 + 1.33 + 1.34 +FT_BEGIN_HEADER 1.35 + 1.36 + 1.37 +#define FT_SERVICE_ID_TT_CMAP "tt-cmaps" 1.38 + 1.39 + 1.40 + /*************************************************************************/ 1.41 + /* */ 1.42 + /* <Struct> */ 1.43 + /* TT_CMapInfo */ 1.44 + /* */ 1.45 + /* <Description> */ 1.46 + /* A structure used to store TrueType/sfnt specific cmap information */ 1.47 + /* which is not covered by the generic @FT_CharMap structure. This */ 1.48 + /* structure can be accessed with the @FT_Get_TT_CMap_Info function. */ 1.49 + /* */ 1.50 + /* <Fields> */ 1.51 + /* language :: */ 1.52 + /* The language ID used in Mac fonts. Definitions of values are in */ 1.53 + /* freetype/ttnameid.h. */ 1.54 + /* */ 1.55 + /* format :: */ 1.56 + /* The cmap format. OpenType 1.5 defines the formats 0 (byte */ 1.57 + /* encoding table), 2~(high-byte mapping through table), 4~(segment */ 1.58 + /* mapping to delta values), 6~(trimmed table mapping), 8~(mixed */ 1.59 + /* 16-bit and 32-bit coverage), 10~(trimmed array), 12~(segmented */ 1.60 + /* coverage), and 14 (Unicode Variation Sequences). */ 1.61 + /* */ 1.62 + typedef struct TT_CMapInfo_ 1.63 + { 1.64 + FT_ULong language; 1.65 + FT_Long format; 1.66 + 1.67 + } TT_CMapInfo; 1.68 + 1.69 + 1.70 + typedef FT_Error 1.71 + (*TT_CMap_Info_GetFunc)( FT_CharMap charmap, 1.72 + TT_CMapInfo *cmap_info ); 1.73 + 1.74 + 1.75 + FT_DEFINE_SERVICE( TTCMaps ) 1.76 + { 1.77 + TT_CMap_Info_GetFunc get_cmap_info; 1.78 + }; 1.79 + 1.80 +#ifndef FT_CONFIG_OPTION_PIC 1.81 + 1.82 +#define FT_DEFINE_SERVICE_TTCMAPSREC(class_, get_cmap_info_) \ 1.83 + static const FT_Service_TTCMapsRec class_ = \ 1.84 + { \ 1.85 + get_cmap_info_ \ 1.86 + }; 1.87 + 1.88 +#else /* FT_CONFIG_OPTION_PIC */ 1.89 + 1.90 +#define FT_DEFINE_SERVICE_TTCMAPSREC(class_, get_cmap_info_) \ 1.91 + void \ 1.92 + FT_Init_Class_##class_( FT_Library library, \ 1.93 + FT_Service_TTCMapsRec* clazz) \ 1.94 + { \ 1.95 + FT_UNUSED(library); \ 1.96 + clazz->get_cmap_info = get_cmap_info_; \ 1.97 + } 1.98 + 1.99 +#endif /* FT_CONFIG_OPTION_PIC */ 1.100 + 1.101 + /* */ 1.102 + 1.103 + 1.104 +FT_END_HEADER 1.105 + 1.106 +#endif /* __SVTTCMAP_H__ */ 1.107 + 1.108 + 1.109 +/* END */