| OLD | NEW |
| (Empty) |
| 1 /***************************************************************************/ | |
| 2 /* */ | |
| 3 /* cffobjs.h */ | |
| 4 /* */ | |
| 5 /* OpenType objects manager (specification). */ | |
| 6 /* */ | |
| 7 /* Copyright 1996-2004, 2006-2008, 2013 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 __CFFOBJS_H__ | |
| 20 #define __CFFOBJS_H__ | |
| 21 | |
| 22 | |
| 23 #include "../../include/ft2build.h" | |
| 24 #include "../../include/freetype/internal/ftobjs.h" | |
| 25 #include "cfftypes.h" | |
| 26 #include "../../include/freetype/internal/tttypes.h" | |
| 27 #include "../../include/freetype/internal/services/svpscmap.h" | |
| 28 #include "../../include/freetype/internal/pshints.h" | |
| 29 | |
| 30 | |
| 31 FT_BEGIN_HEADER | |
| 32 | |
| 33 | |
| 34 /*************************************************************************/ | |
| 35 /* */ | |
| 36 /* <Type> */ | |
| 37 /* CFF_Driver */ | |
| 38 /* */ | |
| 39 /* <Description> */ | |
| 40 /* A handle to an OpenType driver object. */ | |
| 41 /* */ | |
| 42 typedef struct CFF_DriverRec_* CFF_Driver; | |
| 43 | |
| 44 typedef TT_Face CFF_Face; | |
| 45 | |
| 46 | |
| 47 /*************************************************************************/ | |
| 48 /* */ | |
| 49 /* <Type> */ | |
| 50 /* CFF_Size */ | |
| 51 /* */ | |
| 52 /* <Description> */ | |
| 53 /* A handle to an OpenType size object. */ | |
| 54 /* */ | |
| 55 typedef struct CFF_SizeRec_ | |
| 56 { | |
| 57 FT_SizeRec root; | |
| 58 FT_ULong strike_index; /* 0xFFFFFFFF to indicate invalid */ | |
| 59 | |
| 60 } CFF_SizeRec, *CFF_Size; | |
| 61 | |
| 62 | |
| 63 /*************************************************************************/ | |
| 64 /* */ | |
| 65 /* <Type> */ | |
| 66 /* CFF_GlyphSlot */ | |
| 67 /* */ | |
| 68 /* <Description> */ | |
| 69 /* A handle to an OpenType glyph slot object. */ | |
| 70 /* */ | |
| 71 typedef struct CFF_GlyphSlotRec_ | |
| 72 { | |
| 73 FT_GlyphSlotRec root; | |
| 74 | |
| 75 FT_Bool hint; | |
| 76 FT_Bool scaled; | |
| 77 | |
| 78 FT_Fixed x_scale; | |
| 79 FT_Fixed y_scale; | |
| 80 | |
| 81 } CFF_GlyphSlotRec, *CFF_GlyphSlot; | |
| 82 | |
| 83 | |
| 84 /*************************************************************************/ | |
| 85 /* */ | |
| 86 /* <Type> */ | |
| 87 /* CFF_Internal */ | |
| 88 /* */ | |
| 89 /* <Description> */ | |
| 90 /* The interface to the `internal' field of `FT_Size'. */ | |
| 91 /* */ | |
| 92 typedef struct CFF_InternalRec_ | |
| 93 { | |
| 94 PSH_Globals topfont; | |
| 95 PSH_Globals subfonts[CFF_MAX_CID_FONTS]; | |
| 96 | |
| 97 } CFF_InternalRec, *CFF_Internal; | |
| 98 | |
| 99 | |
| 100 /*************************************************************************/ | |
| 101 /* */ | |
| 102 /* Subglyph transformation record. */ | |
| 103 /* */ | |
| 104 typedef struct CFF_Transform_ | |
| 105 { | |
| 106 FT_Fixed xx, xy; /* transformation matrix coefficients */ | |
| 107 FT_Fixed yx, yy; | |
| 108 FT_F26Dot6 ox, oy; /* offsets */ | |
| 109 | |
| 110 } CFF_Transform; | |
| 111 | |
| 112 | |
| 113 /***********************************************************************/ | |
| 114 /* */ | |
| 115 /* CFF driver class. */ | |
| 116 /* */ | |
| 117 typedef struct CFF_DriverRec_ | |
| 118 { | |
| 119 FT_DriverRec root; | |
| 120 | |
| 121 FT_UInt hinting_engine; | |
| 122 FT_Bool no_stem_darkening; | |
| 123 | |
| 124 } CFF_DriverRec; | |
| 125 | |
| 126 | |
| 127 FT_LOCAL( FT_Error ) | |
| 128 cff_size_init( FT_Size size ); /* CFF_Size */ | |
| 129 | |
| 130 FT_LOCAL( void ) | |
| 131 cff_size_done( FT_Size size ); /* CFF_Size */ | |
| 132 | |
| 133 FT_LOCAL( FT_Error ) | |
| 134 cff_size_request( FT_Size size, | |
| 135 FT_Size_Request req ); | |
| 136 | |
| 137 #ifdef TT_CONFIG_OPTION_EMBEDDED_BITMAPS | |
| 138 | |
| 139 FT_LOCAL( FT_Error ) | |
| 140 cff_size_select( FT_Size size, | |
| 141 FT_ULong strike_index ); | |
| 142 | |
| 143 #endif | |
| 144 | |
| 145 FT_LOCAL( void ) | |
| 146 cff_slot_done( FT_GlyphSlot slot ); | |
| 147 | |
| 148 FT_LOCAL( FT_Error ) | |
| 149 cff_slot_init( FT_GlyphSlot slot ); | |
| 150 | |
| 151 | |
| 152 /*************************************************************************/ | |
| 153 /* */ | |
| 154 /* Face functions */ | |
| 155 /* */ | |
| 156 FT_LOCAL( FT_Error ) | |
| 157 cff_face_init( FT_Stream stream, | |
| 158 FT_Face face, /* CFF_Face */ | |
| 159 FT_Int face_index, | |
| 160 FT_Int num_params, | |
| 161 FT_Parameter* params ); | |
| 162 | |
| 163 FT_LOCAL( void ) | |
| 164 cff_face_done( FT_Face face ); /* CFF_Face */ | |
| 165 | |
| 166 | |
| 167 /*************************************************************************/ | |
| 168 /* */ | |
| 169 /* Driver functions */ | |
| 170 /* */ | |
| 171 FT_LOCAL( FT_Error ) | |
| 172 cff_driver_init( FT_Module module ); /* CFF_Driver */ | |
| 173 | |
| 174 FT_LOCAL( void ) | |
| 175 cff_driver_done( FT_Module module ); /* CFF_Driver */ | |
| 176 | |
| 177 | |
| 178 FT_END_HEADER | |
| 179 | |
| 180 #endif /* __CFFOBJS_H__ */ | |
| 181 | |
| 182 | |
| 183 /* END */ | |
| OLD | NEW |