1/***************************************************************************/ 2/* */ 3/* t1cmap.h */ 4/* */ 5/* Type 1 character map support (specification). */ 6/* */ 7/* Copyright 2002-2015 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 __T1CMAP_H__ 20#define __T1CMAP_H__ 21 22#include <ft2build.h> 23#include FT_INTERNAL_OBJECTS_H 24#include FT_INTERNAL_TYPE1_TYPES_H 25 26FT_BEGIN_HEADER 27 28 29 /*************************************************************************/ 30 /*************************************************************************/ 31 /***** *****/ 32 /***** TYPE1 STANDARD (AND EXPERT) ENCODING CMAPS *****/ 33 /***** *****/ 34 /*************************************************************************/ 35 /*************************************************************************/ 36 37 /* standard (and expert) encoding cmaps */ 38 typedef struct T1_CMapStdRec_* T1_CMapStd; 39 40 typedef struct T1_CMapStdRec_ 41 { 42 FT_CMapRec cmap; 43 44 const FT_UShort* code_to_sid; 45 PS_Adobe_Std_StringsFunc sid_to_string; 46 47 FT_UInt num_glyphs; 48 const char* const* glyph_names; 49 50 } T1_CMapStdRec; 51 52 53 FT_CALLBACK_TABLE const FT_CMap_ClassRec 54 t1_cmap_standard_class_rec; 55 56 FT_CALLBACK_TABLE const FT_CMap_ClassRec 57 t1_cmap_expert_class_rec; 58 59 60 /*************************************************************************/ 61 /*************************************************************************/ 62 /***** *****/ 63 /***** TYPE1 CUSTOM ENCODING CMAP *****/ 64 /***** *****/ 65 /*************************************************************************/ 66 /*************************************************************************/ 67 68 typedef struct T1_CMapCustomRec_* T1_CMapCustom; 69 70 typedef struct T1_CMapCustomRec_ 71 { 72 FT_CMapRec cmap; 73 FT_UInt first; 74 FT_UInt count; 75 FT_UShort* indices; 76 77 } T1_CMapCustomRec; 78 79 80 FT_CALLBACK_TABLE const FT_CMap_ClassRec 81 t1_cmap_custom_class_rec; 82 83 84 /*************************************************************************/ 85 /*************************************************************************/ 86 /***** *****/ 87 /***** TYPE1 SYNTHETIC UNICODE ENCODING CMAP *****/ 88 /***** *****/ 89 /*************************************************************************/ 90 /*************************************************************************/ 91 92 /* unicode (synthetic) cmaps */ 93 94 FT_CALLBACK_TABLE const FT_CMap_ClassRec 95 t1_cmap_unicode_class_rec; 96 97 /* */ 98 99 100FT_END_HEADER 101 102#endif /* __T1CMAP_H__ */ 103 104 105/* END */ 106