21#include FT_INTERNAL_DEBUG_H
39 FT_Service_PsCMaps psnames = (FT_Service_PsCMaps)
face->psnames;
43 cmap->glyph_names = (
const char*
const*)
face->type1.glyph_names;
44 cmap->sid_to_string = psnames->adobe_std_strings;
45 cmap->code_to_sid = is_expert ? psnames->adobe_expert_encoding
46 : psnames->adobe_std_encoding;
56 cmap->glyph_names =
NULL;
57 cmap->sid_to_string =
NULL;
58 cmap->code_to_sid =
NULL;
69 if ( char_code < 256 )
72 const char* glyph_name;
76 code = cmap->code_to_sid[char_code];
77 glyph_name = cmap->sid_to_string(
code );
80 for (
n = 0;
n < cmap->num_glyphs;
n++ )
82 const char* gname = cmap->glyph_names[
n];
85 if ( gname && gname[0] == glyph_name[0] &&
100 FT_UInt32 *pchar_code )
103 FT_UInt32 char_code = *pchar_code + 1;
106 while ( char_code < 256 )
117 *pchar_code = char_code;
202 cmap->indices =
encoding->char_index;
214 cmap->indices =
NULL;
222 FT_UInt32 char_code )
227 if ( ( char_code >= cmap->first ) &&
228 ( char_code < ( cmap->first + cmap->count ) ) )
229 result = cmap->indices[char_code];
237 FT_UInt32 *pchar_code )
240 FT_UInt32 char_code = *pchar_code;
245 if ( char_code < cmap->
first )
246 char_code = cmap->first;
248 for ( ; char_code < ( cmap->first + cmap->count ); char_code++ )
250 result = cmap->indices[char_code];
258 *pchar_code = char_code;
293 return face->type1.glyph_names[
idx];
303 FT_Service_PsCMaps psnames = (FT_Service_PsCMaps)
face->psnames;
308 return psnames->unicodes_init(
memory,
325 unicodes->num_maps = 0;
331 FT_UInt32 char_code )
334 FT_Service_PsCMaps psnames = (FT_Service_PsCMaps)
face->psnames;
337 return psnames->unicodes_char_index( unicodes, char_code );
343 FT_UInt32 *pchar_code )
346 FT_Service_PsCMaps psnames = (FT_Service_PsCMaps)
face->psnames;
349 return psnames->unicodes_char_next( unicodes, pchar_code );
#define FT_CALLBACK_DEF(x)
#define FT_CALLBACK_TABLE_DEF
#define FT_ASSERT(condition)
FT_UInt(* FT_CMap_CharNextFunc)(FT_CMap cmap, FT_UInt32 *achar_code)
FT_UInt(* FT_CMap_CharVarIndexFunc)(FT_CMap cmap, FT_CMap unicode_cmap, FT_UInt32 char_code, FT_UInt32 variant_selector)
FT_Bool(* FT_CMap_CharVarIsDefaultFunc)(FT_CMap cmap, FT_UInt32 char_code, FT_UInt32 variant_selector)
FT_UInt32 *(* FT_CMap_CharVariantListFunc)(FT_CMap cmap, FT_Memory mem, FT_UInt32 char_code)
#define FT_FACE_MEMORY(x)
FT_UInt32 *(* FT_CMap_VariantCharListFunc)(FT_CMap cmap, FT_Memory mem, FT_UInt32 variant_selector)
FT_UInt32 *(* FT_CMap_VariantListFunc)(FT_CMap cmap, FT_Memory mem)
FT_Error(* FT_CMap_InitFunc)(FT_CMap cmap, FT_Pointer init_data)
void(* FT_CMap_DoneFunc)(FT_CMap cmap)
FT_UInt(* FT_CMap_CharIndexFunc)(FT_CMap cmap, FT_UInt32 char_code)
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
GLsizei const GLvoid * pointer
GLenum GLuint GLint GLenum face
static char memory[1024 *256]
const char *(* PS_GetGlyphNameFunc)(FT_Pointer data, FT_UInt string_index)
void(* PS_FreeGlyphNameFunc)(FT_Pointer data, const char *name)
struct PS_UnicodesRec_ PS_UnicodesRec
t1_cmap_std_char_index(T1_CMapStd cmap, FT_UInt32 char_code)
psaux_get_glyph_name(T1_Face face, FT_UInt idx)
t1_cmap_expert_init(T1_CMapStd cmap, FT_Pointer pointer)
FT_CALLBACK_TABLE_DEF const FT_CMap_ClassRec t1_cmap_expert_class_rec
t1_cmap_unicode_char_next(PS_Unicodes unicodes, FT_UInt32 *pchar_code)
FT_CALLBACK_TABLE_DEF const FT_CMap_ClassRec t1_cmap_custom_class_rec
t1_cmap_std_char_next(T1_CMapStd cmap, FT_UInt32 *pchar_code)
t1_cmap_custom_char_next(T1_CMapCustom cmap, FT_UInt32 *pchar_code)
static void t1_cmap_std_init(T1_CMapStd cmap, FT_Int is_expert)
FT_CALLBACK_TABLE_DEF const FT_CMap_ClassRec t1_cmap_unicode_class_rec
t1_cmap_custom_init(T1_CMapCustom cmap, FT_Pointer pointer)
t1_cmap_unicode_init(PS_Unicodes unicodes, FT_Pointer pointer)
t1_cmap_std_done(T1_CMapStd cmap)
t1_cmap_custom_done(T1_CMapCustom cmap)
FT_CALLBACK_TABLE_DEF const FT_CMap_ClassRec t1_cmap_standard_class_rec
t1_cmap_unicode_char_index(PS_Unicodes unicodes, FT_UInt32 char_code)
t1_cmap_standard_init(T1_CMapStd cmap, FT_Pointer pointer)
t1_cmap_unicode_done(PS_Unicodes unicodes)
t1_cmap_custom_char_index(T1_CMapCustom cmap, FT_UInt32 char_code)
struct T1_CMapStdRec_ T1_CMapStdRec
typedefFT_BEGIN_HEADER struct T1_CMapStdRec_ * T1_CMapStd
struct T1_CMapCustomRec_ T1_CMapCustomRec
FT_BEGIN_HEADER struct T1_EncodingRecRec_ * T1_Encoding
struct T1_FaceRec_ * T1_Face