1 /***************************************************************************/ 2 /* */ 3 /* t42objs.h */ 4 /* */ 5 /* Type 42 objects manager (specification). */ 6 /* */ 7 /* Copyright 2002-2015 by */ 8 /* Roberto Alameda. */ 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 __T42OBJS_H__ 20 #define __T42OBJS_H__ 21 22 #include <ft2build.h> 23 #include FT_FREETYPE_H 24 #include FT_TYPE1_TABLES_H 25 #include FT_INTERNAL_TYPE1_TYPES_H 26 #include "t42types.h" 27 #include FT_INTERNAL_OBJECTS_H 28 #include FT_INTERNAL_DRIVER_H 29 #include FT_SERVICE_POSTSCRIPT_CMAPS_H 30 #include FT_INTERNAL_POSTSCRIPT_HINTS_H 31 32 33 FT_BEGIN_HEADER 34 35 36 /* Type42 size */ 37 typedef struct T42_SizeRec_ 38 { 39 FT_SizeRec root; 40 FT_Size ttsize; 41 42 } T42_SizeRec, *T42_Size; 43 44 45 /* Type42 slot */ 46 typedef struct T42_GlyphSlotRec_ 47 { 48 FT_GlyphSlotRec root; 49 FT_GlyphSlot ttslot; 50 51 } T42_GlyphSlotRec, *T42_GlyphSlot; 52 53 54 /* Type 42 driver */ 55 typedef struct T42_DriverRec_ 56 { 57 FT_DriverRec root; 58 FT_Driver_Class ttclazz; 59 60 } T42_DriverRec, *T42_Driver; 61 62 63 /* */ 64 65 66 FT_LOCAL( FT_Error ) 67 T42_Face_Init( FT_Stream stream, 68 FT_Face face, 69 FT_Int face_index, 70 FT_Int num_params, 71 FT_Parameter* params ); 72 73 74 FT_LOCAL( void ) 75 T42_Face_Done( FT_Face face ); 76 77 78 FT_LOCAL( FT_Error ) 79 T42_Size_Init( FT_Size size ); 80 81 82 FT_LOCAL( FT_Error ) 83 T42_Size_Request( FT_Size size, 84 FT_Size_Request req ); 85 86 87 FT_LOCAL( FT_Error ) 88 T42_Size_Select( FT_Size size, 89 FT_ULong strike_index ); 90 91 92 FT_LOCAL( void ) 93 T42_Size_Done( FT_Size size ); 94 95 96 FT_LOCAL( FT_Error ) 97 T42_GlyphSlot_Init( FT_GlyphSlot slot ); 98 99 100 FT_LOCAL( FT_Error ) 101 T42_GlyphSlot_Load( FT_GlyphSlot glyph, 102 FT_Size size, 103 FT_UInt glyph_index, 104 FT_Int32 load_flags ); 105 106 FT_LOCAL( void ) 107 T42_GlyphSlot_Done( FT_GlyphSlot slot ); 108 109 110 FT_LOCAL( FT_Error ) 111 T42_Driver_Init( FT_Module module ); 112 113 FT_LOCAL( void ) 114 T42_Driver_Done( FT_Module module ); 115 116 /* */ 117 118 FT_END_HEADER 119 120 121 #endif /* __T42OBJS_H__ */ 122 123 124 /* END */ 125