1 /***************************************************************************/ 2 /* */ 3 /* t42objs.h */ 4 /* */ 5 /* Type 42 objects manager (specification). */ 6 /* */ 7 /* Copyright 2002 by Roberto Alameda. */ 8 /* */ 9 /* This file is part of the FreeType project, and may only be used, */ 10 /* modified, and distributed under the terms of the FreeType project */ 11 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ 12 /* this file you indicate that you have read the license and */ 13 /* understand and accept it fully. */ 14 /* */ 15 /***************************************************************************/ 16 17 18 #ifndef __T42OBJS_H__ 19 #define __T42OBJS_H__ 20 21 #include <ft2build.h> 22 #include FT_FREETYPE_H 23 #include FT_TYPE1_TABLES_H 24 #include FT_INTERNAL_TYPE1_TYPES_H 25 #include FT_INTERNAL_TYPE42_TYPES_H 26 #include FT_INTERNAL_OBJECTS_H 27 #include FT_INTERNAL_DRIVER_H 28 #include FT_INTERNAL_POSTSCRIPT_NAMES_H 29 #include FT_INTERNAL_POSTSCRIPT_HINTS_H 30 31 32 FT_BEGIN_HEADER 33 34 35 /* Type42 size */ 36 typedef struct T42_SizeRec_ 37 { 38 FT_SizeRec root; 39 FT_Size ttsize; 40 41 } T42_SizeRec, *T42_Size; 42 43 44 /* Type42 slot */ 45 typedef struct T42_GlyphSlotRec_ 46 { 47 FT_GlyphSlotRec root; 48 FT_GlyphSlot ttslot; 49 50 } T42_GlyphSlotRec, *T42_GlyphSlot; 51 52 53 /* Type 42 driver */ 54 typedef struct T42_DriverRec_ 55 { 56 FT_DriverRec root; 57 FT_Driver_Class ttclazz; 58 void* extension_component; 59 60 } T42_DriverRec, *T42_Driver; 61 62 63 /* */ 64 65 66 FT_LOCAL( FT_Error ) 67 T42_Face_Init( FT_Stream stream, 68 T42_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( T42_Face face ); 76 77 78 FT_LOCAL( FT_Error ) 79 T42_Size_Init( T42_Size size ); 80 81 82 FT_LOCAL( FT_Error ) 83 T42_Size_SetChars( T42_Size size, 84 FT_F26Dot6 char_width, 85 FT_F26Dot6 char_height, 86 FT_UInt horz_resolution, 87 FT_UInt vert_resolution ); 88 89 FT_LOCAL( FT_Error ) 90 T42_Size_SetPixels( T42_Size size, 91 FT_UInt pixel_width, 92 FT_UInt pixel_height ); 93 94 FT_LOCAL( void ) 95 T42_Size_Done( T42_Size size ); 96 97 98 FT_LOCAL( FT_Error ) 99 T42_GlyphSlot_Init( T42_GlyphSlot slot ); 100 101 102 FT_LOCAL( FT_Error ) 103 T42_GlyphSlot_Load( FT_GlyphSlot glyph, 104 FT_Size size, 105 FT_Int glyph_index, 106 FT_Int32 load_flags ); 107 108 FT_LOCAL( void ) 109 T42_GlyphSlot_Done( T42_GlyphSlot slot ); 110 111 112 FT_LOCAL( FT_Error ) 113 T42_Driver_Init( T42_Driver driver ); 114 115 FT_LOCAL( void ) 116 T42_Driver_Done( T42_Driver driver ); 117 118 /* */ 119 120 FT_END_HEADER 121 122 123 #endif /* __T42OBJS_H__ */ 124 125 126 /* END */ 127