1 /**************************************************************************** 2 * 3 * svgldict.h 4 * 5 * The FreeType glyph dictionary services (specification). 6 * 7 * Copyright (C) 2003-2020 by 8 * David Turner, Robert Wilhelm, and Werner Lemberg. 9 * 10 * This file is part of the FreeType project, and may only be used, 11 * modified, and distributed under the terms of the FreeType project 12 * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 * this file you indicate that you have read the license and 14 * understand and accept it fully. 15 * 16 */ 17 18 19 #ifndef SVGLDICT_H_ 20 #define SVGLDICT_H_ 21 22 #include <freetype/internal/ftserv.h> 23 24 25 FT_BEGIN_HEADER 26 27 28 /* 29 * A service used to retrieve glyph names, as well as to find the index of 30 * a given glyph name in a font. 31 * 32 */ 33 34 #define FT_SERVICE_ID_GLYPH_DICT "glyph-dict" 35 36 37 typedef FT_Error 38 (*FT_GlyphDict_GetNameFunc)( FT_Face face, 39 FT_UInt glyph_index, 40 FT_Pointer buffer, 41 FT_UInt buffer_max ); 42 43 typedef FT_UInt 44 (*FT_GlyphDict_NameIndexFunc)( FT_Face face, 45 const FT_String* glyph_name ); 46 47 FT_DEFINE_SERVICE(GlyphDict)48 FT_DEFINE_SERVICE( GlyphDict ) 49 { 50 FT_GlyphDict_GetNameFunc get_name; 51 FT_GlyphDict_NameIndexFunc name_index; /* optional */ 52 }; 53 54 55 #define FT_DEFINE_SERVICE_GLYPHDICTREC( class_, \ 56 get_name_, \ 57 name_index_ ) \ 58 static const FT_Service_GlyphDictRec class_ = \ 59 { \ 60 get_name_, name_index_ \ 61 }; 62 63 /* */ 64 65 66 FT_END_HEADER 67 68 69 #endif /* SVGLDICT_H_ */ 70 71 72 /* END */ 73